如何使用多字符分隔符提取文件中的第一列?

如何使用多字符分隔符提取文件中的第一列?

我有一个文件,其中使用字符串来<xxxxx>分隔字段。这是为了避免逗号分隔字段和其他类型的单个字符出现问题的选择,因为列中字符串的性质可能包含其中一些特殊字符。

我想提取第一列。我用了:

cat myfile.txt | cut -d '<xxxxx>' -f1 > out.txt

但我收到错误消息说分隔符必须是单个字符。问:如何提取第一列(在第一次出现 之前<xxxxx>

答案1

awk

echo "This is it"|awk -F '<xxxxx>' '{print $1}'

请注意,字段分隔符( 的参数-F)是正则表达式,因此如果分隔符中的任何字符在正则表达式中是特殊的,则需要对它们进行转义。

相关内容