2つのファイルの違いをどのように出力しますか?

2つのファイルの違いをどのように出力しますか?

私のファイルにはおおよそ以下が含まれています。

username:username:username:username:username 

上記の行の長さは約600文字です。

このawkコマンドを使用して、コマンドラインから送信されたAPI / HTTP要求のパラメータとして使用します。

私は私のスクリプトを使って私を「フォローする」ユーザーアカウントのリストを取得し、約24時間ごとに自分のハードドライブの元のリストと新しく出力されたユーザー名のリストを比較します。もう私に興味を持たないエコ。私のロジックをループにカプセル化するには、bashを使用する必要があります。各ユーザー名をテストします。

私の現在のスクリプト:

user=$(awk -F: '{ print $1 }' FILE)  # Grab $User to use as an argument.  
following=$(exec CURRENT_FOLLOWERS) # Outputs the new file

echo "X amount of users are following you on 78B066B87AF16A412556458AC85EFEF66155"  

          SAVE CURRENT FOLLOWERS TO NEW A FILE.  


if [[ DIFFERENCE IS DETECTED ]] ; then    

          echo -ne "$User NO LONGER FOLLOWING YOU\r"

   else echo -ne "This user is following you still.\r"
fi

私の質問は。
2つのファイルの違いをどのように出力しますか?

ベストアンサー1

ソートされていないユーザーのリストを含む2つのファイルが提供されます。

In file1:
    userD
    user3
    userA
    user1
    userB

そして

In file2:
    user3
    userB
    userX
    user1

file1次に、にあるが属していないユーザーの簡単なリストを取得するには、file2次の手順を実行します。

$ comm -23 <(sort file1) <(sort file2)
userA
userD

同様に、ユーザーは入力できますが、file2入力することはできません。file1

$ comm -13 <(sort file1) <(sort file2)
userX

リストファイルがすでにソートされている場合は、それらをそれぞれおよびcomm -23 file1 file2に単純化できますcomm -13 file1 file2

おすすめ記事