我想比較兩個單獨文件的行數。儘管我已經在比較中嘗試使用wc -l
,但我正在努力使其正常工作。如何使用IF/Then Bash命令比較2個文件中的行數
我:
if [ "$(wc -l file1.txt)" == "$(wc -l file2.txt)" ]; then echo "Warning: No Match!"; fi
然而,如果/那麼語句不返回正確的輸出。
如果文件1和2具有相同的行數,那麼編寫此代碼的正確方法是什麼?
FILE1.TXT:
example1
example2
example3
FILE2.TXT:
example4
example5
example6
更新:我們發現,wc -l
命令必須只針對比較返回一個數字。與Why should there be a space after '[' and before ']' in Bash?這個問題不同,這個問題需要使用wc -l
來獲得一個整數,它可以與單獨文件中的行數進行比較。
這對我的作品Ravinder。謝謝。 – DomainsFeatured
@down投票人:請讓我知道投票的原因,以便我可以提高自己。 – RavinderSingh13
我不是downvoter,但運行兩個命令替換並比較它們的輸出是代碼異味。我會嘗試將其重構爲一個更習慣的流程,也許只有一個'wc'或一個Awk腳本。 – tripleee