這裏的文件比較是我的代碼:IGNORECASE與AWK
'FNR==NR {a[$1 FS $2 FS $3 FS $4]++; next} !a[$1 FS $2 FS $3 FS $5]' comparegam.txt workstudyusers1.csv >noidea6.txt
它做正是我需要的,除了我需要IGNORECASE。我曾嘗試在各個地方使用IGNORECASE = 1,但無法使其工作。它要麼失敗,要麼給我零結果,要麼一起忽略它。我嘗試過使用BEGIN [IGNORECASE = 1}而沒有運氣。
任何幫助將不勝感激,我在迷路。我在終端窗口運行這個,而不是從bash腳本。這是最終目標
注:輸出必須包含大小寫敏感的匹配原始文件
這裏是我與IGNORECASE嘗試使用的確切代碼:
awk -F, 'IGNORECASE=1 FNR==NR {a[$1 FS $2 FS $3 FS $4]++; next} !a[$1 FS $2 FS $3 FS $5]' comparegam.txt workstudyusers1.csv >noidea6.txt
awk -F, 'FNR==NR {IGNORECASE=1} {a[$1 FS $2 FS $3 FS $4]++; next} !a[$1 FS $2 FS $3 FS $5]' comparegam.txt workstudyusers1.csv >noidea6.txt
awk -F, '{IGNORECASE = 1} FNR==NR {a[$1 FS $2 FS $3 FS $4]++; next} !a[$1 FS $2 FS $3 FS $5]' comparegam.txt workstudyusers1.csv >noidea6.txt
awk -F, 'BEGIN {IGNORECASE = 1} FNR==NR {a[$1 FS $2 FS $3 FS $4]++; next} !a[$1 FS $2 FS $3 FS $5]' comparegam.txt workstudyusers1.csv >noidea6.txt
awk -F, 'FNR==NR {{IGNORECASE=1} a[$1 FS $2 FS $3 FS $4]++; next} !a[$1 FS $2 FS $3 FS $5]' comparegam.txt workstudyusers1.csv >noidea6.txt
和各種的這些迭代。
而不是大小寫不敏感的比較,嘗試大寫比較。 – alvits
你在使用gawk(GNU awk)嗎? 'IGNORECASE'特定於gawk。你在標題中拼寫爲'IGNORCASE';你確定你在代碼中拼寫正確嗎?複製並粘貼不起作用的確切代碼。 –
我添加了我一直在嘗試的不同迭代,也修正了標題。 tolower工作,但我仍然想知道爲什麼IGNORECASE不工作。我做了awk man,IGNORECASE被列爲選項。 – moore1emu