入力をレコードとフィールドとして扱い、条件に合う行だけへ処理を適用できます。抽出、整形、集計、計算まで一つでこなせます。
COMMAND Linux コマンド辞典
やりたいことから、
コマンドを引こう。
144 のコマンドを、目的・難しさ・危なさで。押すとその場で中身をのぞけて、開いたものには「あなたの辞典」の印が付きます。
- 収録コマンド
- 144
- 目的
- 11
- 安全に試せる
- 81
今日のコマンドNo.006
man
マニュアルページを検索して表示します。知らないコマンドの概要確認から、オプション、設定ファイル、関連コマンドの調査まで使える基礎調査ツールです。
ファイル内容を順に出力します。確認、連結、パイプ入力の供給などでよく使いますが、長大ファイルの閲覧はlessのほうが向いています。
整列済みファイルを比較し、差集合と共通集合を列ごとに出力します。集合としての差分確認に向きます。
決まった区切りや位置に基づいて必要部分だけを抽出します。CSVに似た単純構造や、コロン区切りのファイルを扱う時に便利です。
二つのファイルやディレクトリの差異を比較します。差分形式の理解は、変更確認とレビューの基礎になります。
文字列や正規表現(regular expression)に一致する行を取り出します。ログ、設定、ソースコード、一覧出力の絞り込みに幅広く使えます。
先頭数行または先頭数バイトだけを表示します。ログやCSV、設定ファイルの冒頭確認に向いています。
二つの入力を共通フィールドで突き合わせて結合します。前提として入力が結合キーで整列していることが重要です。
長い内容を前後に移動しながら対話的に閲覧できます。大きなログや設定ファイルを端末で読む時の定番です。
テキストに行番号を付けて表示します。cat -nと似ていますが、番号付けルールの制御が細かくできます。
複数入力を横に並べて出力します。二列比較や簡易表作成で便利ですが、キーに基づく結合ではありません。
入力を一行ずつ処理し、置換、削除、抽出、整形を行います。ワンライナーでの自動整形や一括置換に向きます。
文字列順、数値順、キー指定などで行を並べ替えます。uniqやjoinの前処理としても重要です。
巨大ファイルを扱いやすい単位へ分割します。行数基準にもサイズ基準にも対応でき、後続処理を軽くできます。
末尾数行または末尾数バイトを表示します。更新されるログを追う用途では-fや-Fがよく使われます。
流れてきた出力を標準出力へ通しつつ、同時にファイルへ書き込みます。パイプラインの途中結果を可視化したい時にも使えます。
文字単位の変換、削除、連続圧縮を行います。改行や空白の整形、大文字小文字変換、不要文字除去に向いています。
隣接した同一行だけをまとめ、重複除去や件数表示を行います。前処理としてsortを組み合わせることが多いです。
テキストの行数、単語数、バイト数などを数えます。grep結果の件数確認や、入力規模の見積もりで役立ちます。
標準入力の項目をまとめてコマンド引数へ変換し、後続コマンドを実行します。大量ファイル処理やパイプ連携で有用ですが、区切りの扱いが重要です。