web-dev-qa-db-ja.com

cutコマンドでのnオプションの使用は何ですか?

cutコマンドについて学習しています。カットのマニュアルページには、次のような-nオプションが表示されます。

-n     (ignored)

しかし、nオプションの使用法や、いつ使用するかがわかりませんでした。誰かが例で説明できますか?

1
Ganapathy

man cutは、cutからのcoreutils実装で、実装されていないという理由だけで、-nオプションを「無視された」と記述します。

ただし、-nオプションは、少なくとも* BSD\POSIX.2実装では、他のいくつかのcut実装に実装されています。

したがって、coreutilsのcutは、移植性のために、スクリプトとの互換性を損なわないように、スタブオプションを実装しています。ただし、実装されていないため、使用しても効果はありません。

FreeBSD12.0のman cutから:

-nマルチバイト文字を分割しません。文字は、少なくとも1バイトが選択されている場合にのみ出力され、0個以上の未選択バイトのプレフィックスの後に、文字を形成する残りのバイトが選択されます。

POSIX標準cutページ から、@ Kusalanandaが指摘したリンク:

-n文字を分割しません。 -bオプションを指定すると、low-high(-separated number)形式のリスト内の各要素は次のように変更されます。

Lowによって選択されたバイトが文字の最初のバイトでない場合、lowは、最初にlowによって選択された文字の最初のバイトを選択するためにデクリメントされます。 highで選択されたバイトが文字の最後のバイトでない場合、highをデクリメントして、highで最初に選択された文字の前の文字の最後のバイトを選択します。前の文字がない場合は、ゼロを選択します。結果のrange要素のhighが0に等しいか、lowがhighより大きい場合、list要素は、エラーを発生させることなく、その入力行のリストから削除されます。

Low-形式のリスト内の各要素は、上記のように扱われ、highは、終了を含まない現在の行のバイト数に設定されます。フォーム-highのリスト内の各要素は、lowを1に設定して上記のように扱われます。形式num(単一の数値)のリスト内の各要素は、lowをnumに設定し、highをnumに設定して上記のように扱われます。

3
Rui F Ribeiro