Страницы

Поиск по вопросам

пятница, 20 декабря 2019 г.

Как в строковой переменной удалить первую строку?

#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')"

Комментариев нет:

Отправить комментарий