ファイルの各行から特定の場所だけ抜き出してを表示してくれます。 「ls -alt」だけを実行すると、
% ls -alt 合キ[ 44 drwx-----x 11 susaki teacher 512 4月 16 16:51 . drwx-----x 2 susaki teacher 1024 4月 16 16:48 command drwx--s--x 45 susaki teacher 2560 4月 16 16:39 .. drwx-----x 3 susaki teacher 1024 4月 16 16:35 literacy drwx-----x 3 susaki teacher 512 4月 15 14:25 gis drwx-----x 6 susaki teacher 1024 3月 1 13:40 lab drwx-----x 2 susaki teacher 2048 1月 29 11:45 soft drwx-----x 2 susaki teacher 512 1月 7 09:38 perl drwx-----x 10 susaki teacher 1024 7月 31 2001 lecture drwx-----x 2 susaki teacher 512 6月 29 2001 image drwxr-x--- 2 susaki teacher 512 6月 28 2001 applets
この結果のうち、作成日付とファイル(またはディレクトリ)名だけを取り出す となると、 | (パイプ)を 用いて「cut」を組み合わせると、
% ls -alt | cut -c44-70 4月 16 17:23 .. 4月 16 17:23 command 4月 16 16:51 . 4月 16 16:35 literacy 4月 15 14:25 gis 3月 1 13:40 lab 1月 29 11:45 soft 1月 7 09:38 perl 7月 31 2001 lecture 6月 29 2001 image 6月 28 2001 applets
のように表示されます。「-c」オプションは位置を指定し、上記の例では「左か ら44番目から70番目の位置にある情報を表示せよ」という命令になります。実際 に70という数字は大きめに設定してあります。
今度は、作成日付とファイル(またはディレクトリ)名に加えて、パーミッショ ンも取り出して表示させたいとします。上記の例と同様に、 | (パイプ)を 用いて「cut」を組み合わせると、
% ls -alt | cut -c1-10,44-70 合キ[ 44 drwx-----x 4月 16 17:37 command drwx--s--x 4月 16 17:23 .. drwx-----x 4月 16 16:51 . drwx-----x 4月 16 16:35 literacy drwx-----x 4月 15 14:25 gis drwx-----x 3月 1 13:40 lab drwx-----x 1月 29 11:45 soft drwx-----x 1月 7 09:38 perl drwx-----x 7月 31 2001 lecture drwx-----x 6月 29 2001 image drwxr-x--- 6月 28 2001 applets
と実行すれば、目的通りに表示されます。上記の例と同様、「-c」オプションで 表示させる位置を指定しますが、「-c1-10,44-70」のように複数の位置を指定す ることができます。
上記の例では「-c」オプションで表示させる位置を指定しましたが、その他に 「-f」オプションで一続きの単語単位で分けて表示させる方法も、 よく使われます。「-f」オプションを使用する場合、区切りとなる文字を「-d」 オプションで指定する必要があります。
下記の例では、「book_list.csv」という本の情報が記述されているファ イルを用いて、任意の情報を抽出しようとしています。まず、ファイルの末尾か ら5行だけを抜き出して表示させると、
% tail -5 book_list.csv 545,わかりやすい中国の歴史 世界の教科書シリーズ2,人民教育出版社地理社会 室,明石 書店,2000,"1,701",中華人民共和国、多民族国家、古代文化、社会主義, 546,私たちの環境学,上智大学,駿河台出版社,2000,"1,795",環境問題、南北問題、 公害、 環境経済学、企業、NGO、自然、アメリカ、里山, 547,私たちの田園,岩隈 利輝、千賀 裕太郎、勝野 武彦,集文社,1994,"4,403", 田園計画 、住民参加、集落、緑地、文化財、建物、棚、垣, 548,私のエネルギー論,崎川 範行,海文堂出版,1976,652,自然、エネルギー、原 子力発電 、循環系、太陽、地球、水素、ゴミ, 549,雲南の生活と技術,C・ダニエルス、渡部 武,慶友社,1994,"9,261",少数民族、 西双版 納、雲南、民具、狩猟、焼畑,
上記のようになりました。1番目の項目は本の番号、2番目がタイトル、3番目が 著者、4番目が出版者など情報が記述されています。
では、2番目と3番目の項目だけを抜き出して表示させます。項目の間は , で区切られていますから、下記のように指定します。
% tail -5 book_list.csv | cut -f2-3 -d',' わかりやすい中国の歴史 世界の教科書シリーズ2,人民教育出版社地理社会室 私たちの環境学,上智大学 私たちの田園,岩隈 利輝、千賀 裕太郎、勝野 武彦 私のエネルギー論,崎川 範行 雲南の生活と技術,C・ダニエルス、渡部 武
一方、2番目と4番目の項目だけを抜き出して表示させるには、
% tail -5 book_list.csv | cut -f2,4 -d',' わかりやすい中国の歴史 世界の教科書シリーズ2,明石書店 私たちの環境学,駿河台出版社 私たちの田園,集文社 私のエネルギー論,海文堂出版 雲南の生活と技術,慶友社
と実行すれば、目的通り表示されます。