对于验证过程,我需要比较两个文件之间的行数。我知道如何做到这一点(代码如下所示)。但是,如果该过程按预期进行,则一个文件将始终多出一行。因此,如果 file1 = file2+1,则进程将成功。如何在 if 命令中添加这一额外行?
if [ "$(wc -l < file1.txt)" -eq "$(wc -l < file2.txt)" ]; then echo 'Match!'; else echo 'Warning: No Match!'; fi
答案1
假设您的 shell(最近)bash
提供“进程替换”和“算术扩展”,请尝试
{ read LN1 X; read LN2 X; } < <(wc -l file[12]); if (( ! LN2 - LN1 - 1 )); then echo 'match!'; fi