Unix cut команда для извлечения строки из левой боковой стойки 2-й разделитель справа - PullRequest
0 голосов
/ 25 сентября 2018

как команда возврата может возвращать значение влево, начиная со второго последнего разделителя, начиная с правой стороны.

$ echo 'qwertyuiop.abcdefgh.1234567890.txt' | cut -d '.' -f 1,2
qwertyuiop.abcdefgh
$ echo 'qwertyuiop.1234567890.txt' | cut -d '.' -f 1,2
qwertyuiop.1234567890
$ 

ожидаемый результат для обоих

qwertyuiop.abcdefgh

qwertyuiop

1 Ответ

0 голосов
/ 25 сентября 2018

Вы можете перевернуть строку с помощью команды rev, а затем cut из третьего поля до конца, перевернув в конце.

$ echo 'qwertyuiop.abcdefgh.1234567890.txt' | rev | cut -d '.' -f 3- | rev
qwertyuiop.abcdefgh
$ echo 'qwertyuiop.1234567890.txt' | rev | cut -d '.' -f 3- | rev
qwertyuiop
...