中安拓也のブログ

プログラミングについて書くブログ

【Linux】仕事でよく使っているLinuxコマンド その1

はじめに

Linuxでよく使っているコマンドを整理しました。

view

viewコマンドは、viコマンドをRead Onlyで実施するコマンドとなります。

$ view [ファイルのパス]という風にコマンドを実施するとvi(もしくはvim)エディターで対象のファイルを読み取り専用で開くことができます。

編集したくないファイルを閲覧するときに便利なコマンドです。

おまけ: Vimでログファイルを閲覧するときによく使うコマンド

コマンド 効果
/[検索ワード] 検索ワードで上から検索を実施する
?[検索ワード] 検索ワードで下から検索を実施する
G (Shift + g) ファイルの最終行に移動
gg ファイルの先頭行に移動
:q vi(vim)モードを終了

ls -ltr | grep [キーワード]

ファイルとディレクトリの情報を表示するlsコマンドに-ltrオプションをつけることで更新日時の昇順で並べ替えた上で詳細情報を表示することができます。

また、パイプラインでgrepコマンドをつなぐことでキーワードと一致するファイルのみを表示するようにしています。

使用例

ファイル名にgrepで指定したjsonを含んでいるファイルのみが詳細表示されている上、更新日時の昇順で並んでいることがわかります。

$ ls -ltr | grep json
-rw-r--r--    1 takuya  staff    1616 12  6 22:21 tslint.json
-rw-r--r--    1 takuya  staff     470 12  6 22:21 tsconfig.json
-rw-r--r--    1 takuya  staff    3779 12  7 19:35 angular.json
-rw-r--r--    1 takuya  staff    1624 12 11 16:49 package.json
-rw-r--r--    1 takuya  staff  460512 12 11 16:49 package-lock.json

大量にあるログファイルの中から最新のログファイルを探したい場合などは、このようにgrepでキーワード検索をしたり、更新日時の昇順で並び替えて表示すると見つけやすくなります。

tail -f | grep -v [キーワード]

tail -fコマンドでログファイルの末尾を表示して、パイプラインでgrep -vコマンドをつなぐことで指定したキーワードを除外した状態でログファイルの内容を出力することができます。

使用例

下記のように除外したいキーワードにHealthを含めることで、ヘルスチェックのメッセージを表示しない状態でログ監視をすることができます。

$ tail -f | grep -v Health

似たような名前の大量のファイルの中から新しいファイルを表示したい

ls -lt | tail

ls -ltコマンドとtailコマンドをパイプでつなぐことで、更新日時が新しい順に10件までファイル/フォルダを表示することができます。

使用例

# 更新日時の新しい順にファイル/フォルダを10件まで表示する
$ ls -lt | tail
-rw-r--r--    1 takuya  admin      237  6 20  2015 JOIN_REQUEST.sql
-rw-r--r--    1 takuya  admin      138  6 20  2015 ROLE_MASTERdata.sql
-rw-r--r--    1 takuya  admin      995  6 20  2015 DEV_CATEGORYdata.sql
-rw-r--r--    1 takuya  admin      138  6 20  2015 ROLE_MASTER_DATA
-rw-r--r--    1 takuya  admin      237  6 16  2015 JOIN_REQUEST
-rw-r--r--    1 takuya  admin     5589  6 16  2015 out2.mwb
drwxrwxrwx    8 root    admin      256  5  9  2015 ProgramFiles
-rw-rw-rw-    1 root    admin     1680  4 12  2015 spring-jdbc.xml
-rw-rw-rw-    1 root    admin        0  4 11  2015 MOIKII_DB
drwxrwxrwx    2 root    admin       64  3 17  2015 workspace

参考サイト

lsコマンドでファイルを新しい順番、古い順番にソートする方法