2009-04-24 2 views

ответ

20

Если вы используете Bash,

cut -d $'\001' ... 

работы (см Bash Reference Manual # 3.1.2.4 ANSI-C Quoting).

Другие (более портативные) варианты,

cut -d `echo -e '\001'` ... 

FS=`echo -e '\001'` 
cut -d $FS ... 

или вставляя символ управления непосредственно с помощью^V, как упомянуто Альнитаком и etlerant - в командной строке оболочки, и в редакторах, таких как VI, это означает, «не относитесь к следующему, что я печатаю специально».

4

Да, это вполне возможно.

Если вводить в оболочке, нажмите ^V, а затем ^A вставить ^A дословно в текущей строке, а не его рассматривать как нормальный «перейти на начало строки» команды:

% cat -v foo 
abc^Adef^Aghi 
% cut -d^A -f2 foo 
def 
0

Если, например, вы нецензурный разделитель tab которого эквивалент \t, и вы хотите, чтобы найти второй до конца элемента каждой строки, разделенного вкладкой вы можете использовать это:

cut -d $'\t' -f2- tablimited.csv 
Смежные вопросы