カットは空白ではなく空白の区切り文字をサポートしますか?

カットは空白ではなく空白の区切り文字をサポートしますか?

awk のデフォルトの区切り文字は、空白ではなく空白に変更されます。

切り取りのデフォルトはタブです。

空白ではなく空白区切り文字を使用するようにcutに通知できますか?

例えば

ㅏ:

foo  bar

cut -d' ' -f2 a

スペースだけを印刷しますが、印刷する必要があります。バー

awk '{ print $2; } a

列を印刷します。

もちろん、このセマンティクスが必要な場合は、通常、awkをカット交換として使用できます。しかし、カットの利点は、メモリ効率が非常に高いことです。特に(一部のawksとは異なり)、未使用の列はメモリにロードされません。

答え1

同様の方法を使用してデータを前処理できますtr -s ' ' '\t'。しかし、行が長くなければ何の利点も得られません。 (いくら?測定してみるとわかります。)

答え2

cut(1)何をしたいのかわかりません。あなたの考えが正しいと思います。スペース区切り記号を混ぜるのが最善の方法ですawk(1)

関連情報