名前 | 形式 | 機能説明 | オプション | オペランド | 使用法 | 使用例 | 環境 | 終了ステータス | 属性 | 関連項目 | 診断
cut は、テーブルからカラムを、または、 ファイルの各行からフィールドを切り出す場合に使用します。 データベースの用語でいえば、リレーションの投影を実現しています。 list で指定されるフィールドは、 パンチカード上の文字位置のように固定長でも構いません (-c オプション ) 。また、行毎に長さが異なっていても、行が TAB などのフィールド区切り文字で区切られていてもかまいません (-f オプション ) 。 cut はフィルタとして使用されます。
オプション -b 、 -c 、または -f のうちいずれかを指定しなければなりません。
ファイルを水平方向に ( 文脈によって ) カットするには grep(1) を使用します。 また、ファイルをカラム方向 ( すなわち水平方向 ) に結合するには paste(1) を使用します。 テーブル内のカラムを並べ変えるには cut と paste を使います。
コンマで区切られるか、または空白文字で区切られた 整数値フィールド番号のリスト ( 昇順 ) 。 - ( オプション ) は範囲を示します (たとえば、 1,4,7 、 1-3,8 、 -5,10 ( 1-5,10 の短縮形 ) 、または 3- ( 3 番目のフィールドから最後のフィールドまでを示す短縮形 ) など ) 。
-b の後に続く list はバイト位置を指定します ( たとえば、 -b1-72 は各行の最初の 72 バイトを引き渡します ) 。 -b と -n を一緒に使用すると、 複数バイト文字が分割されないように list が調整されます。 -b を使用した場合、入力行は 1023 バイト以下でなければなりません。
-c に続く list は文字位置を指定します ( たとえば、 -c1-72 は各行の最初の 72 文字を引き渡します ) 。
-d に続く delim はフィールド区切り文字です (-f オプションの場合のみ ) 。デフォルトは tab です。 シェルにとって意味のある空白や他の文字は 引用符で囲まなければなりません。 delim は複数バイト文字でもかまいません。
-f に続く list は区切り文字によってファイル内で区切られるフィールドのリストです ( -d 参照 ) 。 たとえば、 -f1,7 は最初と 7 番目のフィールドだけをコピーします。 フィールド区切り文字のない行は、 -s が指定されていないかぎりそのまま ( テーブルのサブヘディングに有効 ) です。 -f を指定した場合、入力行は 1023 文字以下でなければなりません。
文字を分割しません。 -blist と -n を一緒に指定すると list は複数バイト文字が分割されないように調整されます。
-f オプションが指定されたとき、区切り文字のない行を抑止します。 指定されないと区切り文字のない行は、そのまま引き渡されます。
ファイルが 2 ギガバイト ( 231 バイト) 以上ある場合の cut の動作については、 largefile(5) を参照してください。
ユーザー ID とユーザー名を組み合わせて出力するには次のようにします。
example% cut -d: -f1,5 /etc/passwd |
name に現在のログイン名を設定するには次のようにします。
example$ name=`who am i | cut -f1 -d' '` |
cut の実行に影響を与える環境変数 LC_CTYPE
、LC_MESSAGES
、 NLSPATH
についての詳細は、 environ(5) を参照してください。
次の属性については attributes(5) のマニュアルページを参照してください。
属性タイプ | 属性値 |
使用条件 | SUNWcsu |
CSI | 対応済み |
grep(1), paste(1), attributes(5) environ(5), largefile(5)
file が読み取れない、または存在しない。 複数のファイル名が存在するときは処理が続行される。
-d オプション に区切り文字 delim が指定されていない。
オプション -b 、 -c 、または -f に list が指定されていない。
名前 | 形式 | 機能説明 | オプション | オペランド | 使用法 | 使用例 | 環境 | 終了ステータス | 属性 | 関連項目 | 診断