tdrk's diary

とある情報系大学生。主には自分のための備忘録...になる予定

shellscriptコマンドについて

昨日、今日で使ったshellscriptのコマンドについて、簡単にまとめておきます。
(テキトーにまとめるので、後で再編集すると思います)


grep

ファイル内から指定した文字列を含む行を取り出して表示する。

grep (文字列) (ファイル名)

オプションは以下。複数のオプションを組み合わせることも可。

-G :検索に正規表現を使用できる
-E :検索に拡張正規表現を使用できる
-F :固定文字列の検索を行う
-num :マッチした行から前後num行を同時に検索結果として表示する
-A num :マッチした行から後num行を同時に検索結果として表示する
-B num :マッチした行から前num行を同時に検索結果として表示する
-C :マッチした前後2行を同時に検索結果として表示する
-b :各行の前に,ファイルの先頭からバイト単位のオフセット数を表示する
-n :各行の前に行番号を表示する
-c :検索条件にマッチした行数を表示する
-e pattern :検索条件を指定する
-f file :検索パターンとしてfileの内容を使用する
-h :検索結果の先頭にマッチしたファイル名を表示しない
-i :検索条件に大文字と小文字の区別をなくす
-l :検索条件にマッチしたファイル名を表示する
-q :検索結果を表示しない
-s :エラー・メッセージを表示しない
-v :マッチしない行を検索結果として表示する
-w :パターン・マッチを,単語全体で行うようにする
-x :行全体を検索対象にする

cut

テキストの一部分を取り出す。

cut (オプション) (ファイル名)

オプションは以下。

-b, --bytes byte-list :byte-listで指定した位置のバイトだけ表示する
-c, --characters character-list :character-listで指定した位置の文字だけ表示する
-d, --delimiter delim :フィールドの区切りを設定する。初期設定値はタブ
-f, --fields field-list :field-listで指定したフィールドだけ表示する
-s, --only-delimited :フィールドの区切りのない行を無視する

strings

テキストファイル以外のバイナリファイルやデータファイルの中身を確認する

strings (オプション) (ファイル名)

オプションは以下。

-f :出力文字列の前にファイル名を表示する。
-n num :num以上の長さを文字列のみを出力する。デフォルトは4。

このコマンドは、lessコマンドで見れないバイナリファイルを見るために使われる。
バイナリファイルをlessで見ようとすると文字化けするが、このコマンドを使うと情報が得られる場合がある。

ディレクトリ内のファイル数を表示する

ls (ディレクトリ名) | wc -l