cut 是否支持非空白到空白分隔符?

cut 是否支持非空白到空白分隔符?

awk 中的默认分隔符是空格到非空格的更改。

cut 的默认值是制表符。

我可以告诉 cut 使用非空白到空白分隔符吗?

例如

A:

foo  bar

cut -d' ' -f2 a

只打印一个空格,但应该打印酒吧

awk '{ print $2; } a

打印栏。

当然,如果您需要这种语义,通常您可以使用 awk 作为剪切替换。但 cut 的优点是内存效率很高。特别是它不会将未使用的列加载到内存中(与某些 awks 不同)。

答案1

您可以使用类似的方法预处理数据tr -s ' ' '\t'。但除非你的队伍很长,否则你不会得到任何好处。 (多长时间?测量一下就知道了。)

答案2

我不知道如何做cut(1)你想做的事。我相信您的想法是正确的,如果您混合了空格分隔符,那么最好的选择是awk(1).

相关内容