[A-00059]Shellで正規表現でファイル検索する

lsコマンドで正規表現にハマるファイルのみを表示したい場合の方法を記載しておく。

特定の名称を検索する場合はgrepコマンドで検索できるが正規表現を用いる場合はegrepコマンドを使用する。

ls | grep .log
ls | egrep '[正規表現]'

例えば下記のログファイルが格納されているディレクトリで特定の形式のログだけを表示したい場合がある。

-rw-r--r--   1 root            staff    0 Jun 23 04:24 aaa123.log
-rw-r--r--   1 root            staff    0 Jun 23 04:25 aaad3.log
-rw-r--r--   1 root            staff    0 Jun 23 04:25 aacd2.log
-rw-r--r--   1 root            staff    0 Jun 23 04:25 ab123.log
-rw-r--r--   1 root            staff    0 Jun 23 04:25 abcd1.log
-rw-r--r--   1 root            staff    0 Jun 23 04:25 ac223.log
-rw-r--r--   1 root            staff    0 Jun 23 04:25 ad323.log
-rw-r--r--   1 root            staff    0 Jun 23 04:24 bbb223.log
-rw-r--r--   1 root            staff    0 Jun 23 04:24 ccc323.log

先頭が3文字のアルファベットと3文字の数字で命名されたログだけを表示したいとなった場合にはegrepコマンドをしようすれば下記のように表示できる。

ls | egrep '^[a-zA-Z]{3}[0-9]{3}.log'
MacBook-Pro:logdir$ ls | egrep '^[a-zA-Z]{3}[0-9]{3}.log'
aaa123.log
bbb223.log
ccc323.log

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

*