#bash
Как в строковой переменной удалить первую строку? То есть в переменной хранится текст в несколько строк. Нужно первую строку удалить. Нужно сделать без записи в файл
Ответы
Ответ 1
да как обычно: $ text=$(echo -e '1\n2\n3') $ echo "$text" 1 2 3 $ echo "${text#*$'\n'}" 2 3 для справки: $ man bash, "Remove matching prefix pattern": ${parameter#word}. ну или в стандарте posix, "Remove Smallest Prefix Pattern": ${parameter#[word]}. и если это актуально для вашего случая (не используете что-нибудь современное типа bash/zsh), то придётся вместо $'\n' вставить в текст скрипта непосредственно «перевод строки»: echo "${text#* }"Ответ 2
Например можно с помощью sed'а: VAR="$(echo "$VAR" | sed '1d')"
Комментариев нет:
Отправить комментарий