データを含むファイルが1つあります。
ID Name
1 abc
2 def
....
文字列を含む別のファイルがあります:
ID
1
9
10
...
文字列ファイル(IDのみ)に文字列を含むデータファイルを検索したいのですが、データファイルに文字列が見つかった場合は、そのレコードのみを削除します。
したがって、上記の例では:
ID = 1のレコードのみをデータファイルから削除する必要があります。
これは、UNIXシステムで実行する必要があります。
私はこれを試しました:
grep -v -F /path/to/string/file/string.txt /path/to/data/file/data.csv
これによりコンテンツが一覧表示されますが、データファイルのレコードは編集/削除されません。
ありがとう
このawkソリューションを使用できます:
awk 'NR==FNR{keep[$1]; next} !($1 in keep)' string.txt data.csv
2 def
参照: 効果的なAWKプログラミング
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加