LoginSignup
1
0

More than 1 year has passed since last update.

シーン別 Linuxコマンドの応用(ファイル操作)

Last updated at Posted at 2022-04-11

概要

バックエンドの仕事でよく使う、ファイルの検索や一括編集ができる便利なコマンドをシーン別にまとめます。
細かい説明は省いてるので、中級者~の方におすすめです。

シーン別のコマンド集

シーン1 ファイル内の文字列を検索したい

$ cat filename.txt | grep SEARCH_WORD

シーン2 ディレクトリ内のファイルを再帰的に検索したい

適切にコマンドで検索することで、手間なく、漏れなく探し出すことができます。

カレントディレクトリでの操作を想定してます。

# 検索ワードを含む行を一覧
$ find -type f | xargs grep "SEARCH_WORD" | less
# 検索ワードを含むファイル名を一覧 (↑で行数が多すぎる場合)
$ find -type f | xargs grep -l "SEARCH_WORD"

# 【特定の拡張子のみ操作】
# 検索ワードを含む行を一覧 (PHP拡張子のファイルのみ)
$ find -type f | grep "php$" | xargs grep "SEARCH_WORD"

シーン3 検索したワードを置換したい

シーン2で検索したワードを、そのまま他のワードに置換できます。

# 置換実行後、該当行がどうなるかを確認 (ファイルは編集されません)
$ find -type f | xargs sed -e "s/SEARCH_WORD/REPLACE_WORD/g" | grep REPLACE_WORD
# 一括で置換
$ find -type f | xargs sed -i -e "s/SEARCH_WORD/REPLACE_WORD/g"

# 【特定の拡張子のみ操作】
# 一括で置換 (PHP拡張子のファイルのみ)
$ find -type f | grep "php$" | xargs sed -i -e "s/SEARCH_WORD/REPLACE_WORD/g"

シーン4 ストレージの空きが少ない

ストレージの容量不足の特定や、その解消に使えるコマンドです。

# ストレージ全体の空きを確認
$ df -h
# カレントディレクトリのディレクトリ、ファイルサイズを大きい順に表示
$ du -ah ./ | sort -rh | less

シーン5 ファイルの行数を調べたい

$ cat filename.txt | grep -c .

シーン6 ログファイルをリアルタイムで監視したい

$ tail -f /var/log/httpd/error_log

シーン7 gzファイルの中身を、展開せずに確認したい

$ zcat filename.txt.gz | less
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0