2014-12-03 91 views
-4

有2個unix文件。我想將文件1中的行與文件2進行比較,並且如果文件1中的行與文件2打印成功相匹配,則打印失敗。我必須在UNIX中執行此操作。unix中的逐行比較

12,ADW 
66,AIMS 
3,CCA 
85,CCDB 
3,GXS 
1,MDM 
4,medsapecc 
262,MIF 
434,PI_CHARGEBACK 
4,Pomniture 
2,PSCORE 
1,SDW 
1,SNT Tables 
5,VAPS 

第二個文件:

12,ADW 
25,AIMS 
3,CCA 
70,CCDB 
3,CHARGEBACK 
2,DISTRACK 
5,GENESYS 
3,GXS 
20,MDM 
14,MDSI 
2,MEDIGXS 
10,MEDSAPECC 
267,MIF 
15,P4 
2,PEDMDB 
2,PNSS 
2,POMNITURE 
3,PSCORE 
20,SDW 
5,VAPS 

輸出文件應該是:

ADW SUCCESS 
AIMS FAIL 
CCA SUCCESS 
CCDB FAIL 
GXS SUCCESS 
MDM FAIL 

..等..請幫助?

+0

你應該張貼你寫來解決這個問題,並解釋究竟是什麼並沒有關於它的工作的代碼。 – csmckelvey 2014-12-03 23:10:49

+0

UNIX是一個規範。 Linux(技術上GNU/Linux),OSX,BSD(FreeBSD,NetBSD,OpenBSD)等都是該規範的實現。當你說你必須在UNIX中這樣做時,這並不意味着什麼。您可以使用流行的shell腳本語言之一,如bash,zsh,sh,csh等。您可以使用Perl,Ruby,Python等。 - 您試圖用哪種語言來實現您的目標? – SnakeDoc 2014-12-03 23:11:06

回答

0

隨着

awk ' 
    NR==FNR{arr[$2]=$1;next} 
    {print $2, (arr[$2] == $1) ? "SUCCESS" : "FAIL"} 
' FS=, file1 file2