セキュリティタスクの一環として、私はsqlite3を使用して、毎日SSHを介して数十のGoogle Chrome履歴ファイルを分析します。
各ユーザーは、数十の承認された「安全な」サイトにアクセスできます。私の目的のために、私はこれらのセキュリティサイトに興味がありません。各履歴ファイルのURLを一覧表示し、セキュリティWebサイトを無視するために、grep -v
次のように各セキュリティWebサイトを使用して一覧表示します。
sqlite3 /home/me/HistoryDatabaseFile.db "select * from urls order by url;" | grep -v safesite1.com | grep -v safesite2.com | grep -v safesite3.com | grep -v safesite4.com
など。私のコマンドは少なくとも20行に増え、管理できなくなりました。安全なサイトをリスト形式で除外しながらユーザーにURLリストを表示する方法はありますか?私は次のことを想像しています:
safesite1.com
safesite2.com
safesite3.com
次に、そのリストをコマンドにインポートします。内部でも外部でもかまいません。 bashから出力されるだけで構いません。
助けてくれてありがとう!
ベストアンサー1
私の考えであなたが探しているものは次のとおりです
grep -vf safe_websites inputfile
-v
すでに知っている一致を元に戻すには、-f
ファイルからパターンをインポートしますsafe_websites
。