Используйте awk, чтобы удалить все после ","

С POSIX sed вы можете сделать как:

sed -ne '/three/!d;:a;n;p;ba' inp.file

Использование Perl:

perl -lne 'print if 1 <(/three/...eof)' inp.file
6
15.09.2021, 07:20
2 ответа

Использованиеsed:

$ sed -n '2s/,.*//p' <<<"$var"
aaa

особенно если вы читаете из большого файла, хорошо установить точку останова после того, как ваша команда перейдет ко второй строке.

$ sed -n '2{s/,.*//p;q;}' infile

это позволит qизбежать последующей обработки входного файла.

3
15.09.2021, 19:46
echo "XXXX YY ZZZZZZZ
aaa,bbb,ccc" | awk -F,  '{print $1}'
XXXX YY ZZZZZZZ
aaa
1
16.09.2021, 20:58

Теги

Похожие вопросы