他のファイルから特定の文字列を含む行を削除する

他のファイルから特定の文字列を含む行を削除する
grep -v -x -f f2 f1

私はこれを試しましたが、私が持っているので動作しません

f2:

test 141.1.11.1
test2 8.18.8.8
4.4.4.4

f1:

test 1.1.1.1
test2 8.8.8.8
test3 4.4.4.4

test3 4.4.4.4含めるので、行を削除するのはアイデアですが、うまくいきませ4.4.4.4ん。私のコマンドには何の問題がありますか?

正確に入力すると削除されますが、4秒しか含まれていない場合は削除されません。

ベストアンサー1

オプションを削除するだけです-x。そのオプションの目的は、部分ではなく行全体で与えられた正規表現を一致させることです。

grep -v -f file2 file1

上記のように、正規表現の一致ではなく文字列の一致が必要な場合は、-Fコマンドにオプションを追加してください。

grep -v -F -f file2 file1

おすすめ記事