比较File1和File2的列1和2。在值不匹配的第一时间停止比较并退出过程
文件1
1 31789.00 37145.00
1 32221.00 37145.00
1 56783.00 37145.00
1 32223.00 37145.00
1 31793.00 37145.00
文件2
1 31789.00 37145.00
1 32221.00 37145.00
1 31791.00 37145.00
1 32223.00 99999.00
1 31793.00 37145.00
我尝试过
awk 'NR==FNR{a[$0];next}(!($0 in a)){print}' File1 File2
我不想显示不匹配的行,我想在出错时停止该过程,并说出发现错误的行
类似的东西:
Error found in line 3
答案 0 :(得分:1)
能否请您尝试以下。考虑到您不想打印匹配的行。
redux-persist
上面的代码中的 awk 'FNR==NR{a[$1,$2]=$0;next} !(($1,$2) in a){print "Error found in line "FNR;exit}' Input_file1 Input_file2
将帮助您尽快执行此操作,如果您不需要它,则可以将其从上面的代码中删除。
现在也添加上述解决方案的非一个内衬形式。
exit
答案 1 :(得分:1)
赞:
awk 'NR==FNR{a[NR]=$1;b[NR]=$2;next}
a[FNR]!=$1||b[FNR]!=$2{print "error in line "FNR; exit 1}' file1 file2
答案 2 :(得分:1)
这会更简单
SqlQuery<String, MyEntity> sql = new SqlQuery<>(MyEntity.class, SQL_SELECT);
//You can set arguments
//sql.setArgs(composante, typeValeur);
return myEntityCache.query(sql).getAll().stream().map(Entry::getValue)
.collect(Collectors.toList());