2つの異なるファイルの2つの列を比較し、一致しないものと新しいものを別々に印刷します

マイク

2つの複数列のTABBファイル(必要に応じてCSV化可能)(4列目と8列目)の2つの列を比較し、一致しないものと新しいものを別々に印刷したい

table 1 (showing 4th, 8th columns)
100001 28/10/2020
100002 15/03/2017

table 2 (showing 4th, 8th columns)
100001 28/10/2020
100002 18/03/2017
100003 07/12/2018

一致しない印刷// 8列目のデータが異なるため(日付、3日後)

100002 18/03/2017

print new // siceレコードがテーブル1に存在しません

100003 07/12/2018

私はstackoverflowとは異なるアプローチを試し、同様の質問を確認してgoogledしました。このstackoverflowスレッドは私が見つけた最も近いものですが、それでも成功しません

このワンライナー

awk '{k=$4 FS $8} NR==FNR{a[k]; next} !(k in a)' file1 file2

new !(k in a)を出力しますが、一致しないものは出力しません。ただし、5行ではなく7行を新規として印刷する必要があります。8列目の日付スラッシュ/が影響する可能性があるのではないかと思います。それでも、それは不一致には役立ちません。

編集:@ ed-mortonのアドバイスに従って更新:

user@machine:~/testing$ cat file1
abc 123 456 100001  def ghi 789 28/10/2020
ujl 764 678 100002  htg dcf 065 15/03/2017
user@machine:~/testing$ cat file2
abc 123 456 100001  def ghi 789 28/10/2020
ujl 764 678 100002  htg dcf 065 18/03/2017
rfg 453 287 100003  grf cfe 764 07/12/2018
user@machine:~/testing$ awk 'NR==FNR{a[$4]=$8; next} a[$4] != $8' file1 file2
ujl 764 678 100002  htg dcf 065 18/03/2017
rfg 453 287 100003  grf cfe 764 07/12/2018
エド・モートン

これはあなたが望むものかもしれません(テストされていません):

awk 'NR==FNR{a[$4]=$8; next} a[$4] != $8' file1 file2

8列目またはその他の場所のスラッシュ、または入力内の他の特定の文字は違いがありません。最初に使用したコードとこのコードは、リテラル文字列の比較を行っているだけです。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

最初の列に基づいて2つのファイルを比較し、一致しないものを印刷します

2 つのファイルを比較し、一致しない行の最初の単語だけを文字列とともに出力します

2つのファイルを重複/比較し、一致しなかったものを印刷する

異なるファイルの2つのフィールドを比較し、順序に関係なく一致するもののみを返します

2つの辞書を比較し、欠落しているか一致しないものを印刷します

2つのファイルを比較し、最初のファイルに一致するものを印刷して列を追加します

2つの異なるファイルの列を比較し、最初のファイルからレコードを印刷し、2番目のファイルから一致しない列を印刷します

awkは、3つのファイルの列を比較し、NAプレフィックスと一致しないものとその内容を出力します。

awkを使用した2つのファイルの比較と一致しないレコードの印刷

2つの異なるファイルの2つの列のペアを比較し、一致を水平方向にマージして印刷するにはどうすればよいですか(BASHまたはAWKの優先)?

1つの列に基づいて2つのファイルをマージし、一致するものと一致しないものの両方を出力するにはどうすればよいですか?

2つのファイルの2つの列を比較し、awkで一致しないパターンを印刷する方法

2つの異なるJSONオブジェクトのキーを比較し、一致しない値とともにキーを返します

2つのファイルを比較し、不一致の列とともに不一致の行を書き込みます。不一致の列を指摘することが私の主な問題ステートメントです

2つの大きなファイルの行を比較し、一致する行を保持しようとしていますが、一致しません

両方のファイルの最初の列に基づいて2つのタブ区切りファイルを比較し、出力ファイルに一致するエントリと一致しないエントリを出力します

2つのファイルの2つのフィールドを比較し、一致しない場合は印刷します

2つの巨大な(5〜6 GB)csvファイルを比較し、一致する数と一致しない数を数えます。行の

異なるファイルの2つの列を比較し、列のレコード間の差が0.001以下の場合、印刷が一致する

phpは2つの配列を比較し、一致しないものを破棄します

2つのファイルを比較し、一致しない場合は空の行を出力しますか?

2行を比較し、2つのファイルから一致しない単語を出力します

2 つのファイルを比較して、部分的に一致しない行を追加する方法は?

Bashは2つの異なるファイルを比較し、2番目から一致しない行を取得します

最も近い一致によって長さが異なる2つの列の2つのデータフレームをマージします

awkは2つのファイルを比較し、一致する行と一致しない行を出力します

一致する場合は2つのテキストファイルを最初の列と比較し、一致しない場合は同じように印刷し、ゼロを入力する方法は?

Pythonで2つのリストを比較し、一致するものと一致しないもののみを保持する

2つのファイルを1行ずつ比較し、一致するものを3番目のファイルに移動します

TOP 一覧

  1. 1

    グラフからテーブルに条件付き書式を適用するにはどうすればよいですか?

  2. 2

    ソートされた検索、ターゲット値未満の数をカウント

  3. 3

    Unity:未知のスクリプトをGameObject(カスタムエディター)に動的にアタッチする方法

  4. 4

    セレンのモデルダイアログからテキストを抽出するにはどうすればよいですか?

  5. 5

    Ansibleで複数行のシェルスクリプトを実行する方法

  6. 6

    Reactでclsxを使用する方法

  7. 7

    tkinterウィンドウを閉じてもPythonプログラムが終了しない

  8. 8

    Windows 10 Pro 1709を1803、1809、または1903に更新しますか?

  9. 9

    Pythonを使用して同じ列の同じ値の間の時差を取得する方法

  10. 10

    PowerShellの分割ファイルへのヘッダーの追加

  11. 11

    Chromeウェブアプリのウェブビューの高さの問題

  12. 12

    BLOBストレージからデータを読み取り、Azure関数アプリを使用してデータにアクセスする方法

  13. 13

    Crashlytics:コンパイラー生成とはどういう意味ですか?

  14. 14

    GoDaddyでのCKEditorとKCfinderの画像プレビュー

  15. 15

    Windows 10の起動時間:以前は20秒でしたが、現在は6〜8倍になっています

  16. 16

    MLでのデータ前処理の背後にある直感

  17. 17

    モーダルダイアログを自動的に閉じる-サーバーコードが完了したら、Googleスプレッドシートのダイアログを閉じます

  18. 18

    reCAPTCHA-エラーコード:ユーザーの応答を検証するときの「missing-input-response」、「missing-input-secret」(POSTの詳細がない)

  19. 19

    STSでループプロセス「クラスパス通知の送信」のループを停止する方法

  20. 20

    ファイル内の2つのマーカー間のテキストを、別のファイルのテキストのセクションに置き換えるにはどうすればよいですか?

  21. 21

    ネットワークグラフで、ネットワークコンポーネントにカーソルを合わせたときに、それらを強調表示するにはどうすればよいですか?

ホットタグ

アーカイブ