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

max*_*zig 5 shell

awk 中的默认分隔符是空白到非空白的变化。

cut 的默认值是制表符。

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

例如

A:

foo  bar

cut -d' ' -f2 a
Run Code Online (Sandbox Code Playgroud)

只打印一个空格,但应该打印bar

awk '{ print $2; } a
Run Code Online (Sandbox Code Playgroud)

打印栏。

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

War*_*ung 3

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