はじめに
テキストフィルタコマンドとは
標準入力(キーボードとか)を入力として受け取り、標準出力(ディスプレイとか)に出力するコマンドをテキストフィルタコマンドというそうです。この記事では**「テキストフィルタコマンドでこんなことができちゃうんだぞ(どやー)」**的なことを紹介してみます。
この記事であそぶテキストフィルタコマンド一覧
まんがでわかるLinux シス管系女子を参考にグループ分けしてみました。
ファイルの中身を表示するコマンド
| コマンド | なにこれ? | 使い方の例 |
|:--|:--|:--|:--|
| cat | ファイルの中身を全部表示する | $ cat -n /etc/hosts |
| tail | ファイルの中身の末尾を表示する | $ tail -f -n 5 /etc/services |
| join | 共通フィールドのある2つのファイルを連結して表示する | $ join file1 file2 |
| paste | 2つのファイルを連結して表示する | $ paste file1 file2 |
コマンドの結果を加工するコマンド
| コマンド | なにこれ? | 使い方の例 |
|:--|:--|:--|:--|
| grep | 正規表現で文字列を検索して表示する | $ grep -E -n "#+" /etc/httpd/conf/httpd.conf |
| sort | 昇順/降順に表示する | $ sort -r file |
| cut | 指定したデリミタで分割して表示する | $ cut -d":" -f1 /etc/passwd |
| uniq | 重複する行を1行にして表示する | $ uniq -c uniq |
| sed | | |
| awk | | |
| nl | 行番号を表示する | $ nl -w4 -nrz -s": " /etc/hosts |
| tr | 文字を変換して表示する | $ cat /etc/services パイプ tr [:lower:] [:upper:] |
コマンドの結果を最終加工するコマンド
| コマンド | なにこれ? | 使い方の例 |
|:--|:--|:--|:--|
| less | ファイルを1画面ずつ表示する | $ less -N -M file |
| tee | コマンドの結果の表示とファイル出力をする | $ grep -E -n "#+" /etc/httpd/conf/httpd.conf パイプ tee -a file |
| wc | ファイルの行数、単語数、文字数を表示する | $ wc -l /etc/services |
| head | ファイルの中身の先頭を表示する | $ head -n 5 /etc/services |
| xargs | コマンドの結果を制限つきの引数として使用し、コマンドを実行する | $ echo * パイプ xargs ls |