サブフォルダーを含むフォルダーがあります。
/example.org
/account1
/account2
/account3
/var/log/maillog、/var/log/maillog.1、/var/log/maillog.2などでアカウントフォルダ名の出現を検索したい。
発生がない場合は、ファイルに記録したいと思います。
どうすればいいですか?
サブフォルダーを含むフォルダーがあります。
/example.org
/account1
/account2
/account3
/var/log/maillog、/var/log/maillog.1、/var/log/maillog.2などでアカウントフォルダ名の出現を検索したい。
発生がない場合は、ファイルに記録したいと思います。
どうすればいいですか?
私はgrepでそれを行います。
まず、「検索」したいパターンを取得する必要があります。それらのアカウント(あなたの場合はサブディレクトリ名)。find
またはを使用ls
して、これらのサブディレクトリ名を1行ごとに取得できます。例えば:ls -l |grep "^d"|awk '{print $8}'
したがって、パターンファイルは次のようになります:(たとえば、pattern.txtとして保存)
account1
account2
account3
その後、あなたはすることができます:
grep -FL -f pattern.txt /var/log/maillog*
これにより、pattern.txtにアカウントが含まれていないmaillog*ファイルが一覧表示されます。
これらの出力をファイルとして保存する場合は、次のコマンドでリダイレクトします。> file
上記のすべてがテストされたわけではなく、問題を解決する方法のアイデアにすぎないことに注意してください。それが役に立てば幸い。