Mac の cut コマンド

UB3/informatics/commands_mac/cut_mac

このページの最終更新日: 2023/02/14

  1. 概要: cut の使い方
  2. cut コマンドの Windows equivalent

広告

概要: cut の使い方

cut は、特定の文字で区切られた項目を分割するコマンドである。ファイルの中から特定の単語を抽出する際にも使うことができる。行ごとに処理してくれるので便利。

基本形は cut option filename である。各種オプションとともに例を挙げておく。


オプション一覧

-c

切り出す文字数を指定する。

  • cut -c 20-30 file1 で、file1 の全ての行の 20 - 30 番目の文字が切り出される。
  • 最初から 1000 文字を切り出す場合は -1000 とする。単に 1000 とすると、各行の 1000 番目の文字が抜き出されるようだ。
-d

区切り文字を "" で挟んで指定する。デフォルトはタブである。タブを区切り文字にしたいときは、このオプション自体が不要なので気をつける。

次の -f オプションと組み合わせないと、コマンド自体動かないかもしれない。

  • cut -d " " file.txt でスペース区切りの指定。
-f

区切り文字がある場合に、何番目の項目を表示するかを指定する。

  • cut -f 2 file1 で、タブ区切りファイルである file1 の左から 2 番目の項目が出力される。
  • cut -f 1,3 file1 のようにすると、1 および 3 番目の項目が出力される。
  • ただし、残念ながら出力する順番を変えて 3,1 のようにするのは cut では不可能 (3)。よって cut -f 1,3 file1 と cut -f 3,1 file1 は全く同じ結果になる。awk を使う必要がある。
-s 区切りのない行を無視する。


cut コマンドの Windows equivalent

信じられないことに、簡単な Windows equivalent は存在せず、for loop を回す必要がある。

区切り文字がスペースの場合、1 行目を抜き出す cut コマンドは cut -d " " -f1 となる。これを Windows で実行したい場合

FOR /F "tokens=1" %i IN (sample1.txt) DO @ECHO %i

となる (2)。

References

  1. cut、head、tail、sort・・・定番のフィルタコマンドを使いこなす! ~業務でラクするためのUNIXテクニック~ Link: Last access 2017/10/25.
  2. Windows で、Shell コマンドを代用する. mofu犬blog. Link: Last access 2019/11/20.
  3. cutコマンドのフィールドの順序. Link: Last access 2019/11/30.

コメント欄

サーバー移転のため、コメント欄は一時閉鎖中です。サイドバーから「管理人への質問」へどうぞ。