Как определить разделитель «tab» с «cut» в BASH?

Ниже приведен пример использования cut to break input в поля с использованием разделителя пробелов и получения второго поля:

cut -f2 -d' '

Как разделитель можно определить как вкладку, а не пробел?

Два пути:

Нажмите Ctrl-v + Tab

 cut -f2 -d' ' infile 

или напишите так:

 cut -f2 -d$'\t' infile 

По умолчанию используется вкладка.

См. Страницу разрезания .

 -d delim Use delim as the field delimiter character instead of the tab character. 

Поэтому вы должны просто написать

 cut -f 2 

В более общем плане, не требуя каких-либо невидимых символов: Используйте tr для преобразования разделителей в формат, который можно более легко определить.

 $ echo -e "a\tb\tc" |tr '\t' ' ' |cut -d' ' -f2 b 

tr – простой, но мощный инструмент для сопоставления и замены символов.

awk '{ print $2; }' inputfile

Ответ не мог упростить это:

cut имеет в качестве разделителя по умолчанию разделитель, поэтому нет смысла использовать ключ -d

cat testfile1 a bc

cut testfile1 -f 1 тестовый файл cut -f 2 b cut testfile -f 3 c

вырезать тестовый файл -f 1,2,3 abc