Sed
如何提取具有多字元分隔符的文件中的第一列?
我有一個文件,我在其中使用一個字元串
<xxxxx>
來分隔欄位。這是避免逗號分隔欄位和其他類型的單個字元出現問題的選擇,因為列中的字元串的性質可能包含其中一些特殊字元。我想提取第一列。我用了:
cat myfile.txt | cut -d '<xxxxx>' -f1 > out.txt
但是我收到錯誤說分隔符必須是單個字元。問:如何提取第一列(在第一次出現
<xxxxx>
?
與
awk
:echo "This is it"|awk -F '<xxxxx>' '{print $1}'
請注意,欄位分隔符(到 的參數
-F
)是一個正則表達式,因此如果分隔符中的任何字元在正則表達式中是特殊的,則需要對其進行轉義。