如何使“ cut”命令将顺序分隔符视为相同?

我正在尝试从基于列的“空间”调整后的文本流中提取某个(第四个)字段。我试图以cut以下方式使用命令:


cat text.txt | cut -d " " -f 4


不幸的是,cut没有将多个空格视为一个定界符。我本来可以通过awk


awk '{ printf $4; }'


或sed


sed  -E "s/[[:space:]]+/ /g"


折叠空间,但我想知道是否有任何方法可以处理,cut并且本机有几个定界符?


慕姐8265434
浏览 711回答 3
3回答

慕森卡

尝试:tr -s ' ' <text.txt | cut -d ' ' -f4从tr手册页:-s,--squeeze-repeats替换重复字符的每个输入序列&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 在SET1中列出一次
打开App,查看更多内容
随时随地看视频慕课网APP