shell 比较两个文件

时间:2021-04-11 10:09:59
我在shell 中比较两个文件是否一样:
diff file1 file2 > f1_f2

如果f1_f2 是空的话,怎么检查啊?

在shell 里怎么check 啊?

我写的:
 if [ $f1_f2 == 0 ]; then
  echo " test ok"
 else
  echo " please check.."
 fi

我发现有问题啊,就算file1 和file2 内容一样还是echo " please check.."

有啥改进的地方啊?

7 个解决方案

#1


 if [ $f1_f2 == 0 ]; then
------------
文件是f1_f2 你判断文件是否为空  竟然这么判断  明显就是在瞎写   与其瞎写 连google都不知道用吗?

#2


如果文件名叫f1_f2  那么这样判断是否为空

if [ -z  f1_f2 ]
then 
     echo "空"
else 
     echo "非空"
fi

或者不用diff file1 file2 > f1_f2  直接比较file1 file2即可
if diff file1 file2 >/dev/null
then
      echo "file1 and file2 are the same"
else 
     echo "file1 and file2 are not the same"
fi

#3


谢谢主席指点!
向你学习!

#4


二楼的第一个我写错了
如果文件名叫f1_f2 那么这样判断是否为空

if [ -s f1_f2 ]
then 
  echo "非空
else 
  echo "空"
fi



如果你要常用shell脚本 如果你也不爱遇到问题google 那么我建议你学一下这个经典的教程http://www.linuxsir.org/main/doc/abs/abs3.7cnhtm/index.html   不要遇到问题临时抱佛脚

#5


引用 2 楼 steptodream 的回复:
如果文件名叫f1_f2 那么这样判断是否为空

if [ -z f1_f2 ]
then 
  echo "空"
else 
  echo "非空"
fi

或者不用diff file1 file2 > f1_f2 直接比较file1 file2即可
if diff file1 file2 >/dev/null
then
  echo "file1 and file2 ar……

还要跟主席想汇报一下:
if [ -z file ]
我试了一下,没有成功。下面一个成功了。

#6


我不都说了 写错了嘛

#7


该回复于2012-07-17 08:33:29被版主删除

#1


 if [ $f1_f2 == 0 ]; then
------------
文件是f1_f2 你判断文件是否为空  竟然这么判断  明显就是在瞎写   与其瞎写 连google都不知道用吗?

#2


如果文件名叫f1_f2  那么这样判断是否为空

if [ -z  f1_f2 ]
then 
     echo "空"
else 
     echo "非空"
fi

或者不用diff file1 file2 > f1_f2  直接比较file1 file2即可
if diff file1 file2 >/dev/null
then
      echo "file1 and file2 are the same"
else 
     echo "file1 and file2 are not the same"
fi

#3


谢谢主席指点!
向你学习!

#4


二楼的第一个我写错了
如果文件名叫f1_f2 那么这样判断是否为空

if [ -s f1_f2 ]
then 
  echo "非空
else 
  echo "空"
fi



如果你要常用shell脚本 如果你也不爱遇到问题google 那么我建议你学一下这个经典的教程http://www.linuxsir.org/main/doc/abs/abs3.7cnhtm/index.html   不要遇到问题临时抱佛脚

#5


引用 2 楼 steptodream 的回复:
如果文件名叫f1_f2 那么这样判断是否为空

if [ -z f1_f2 ]
then 
  echo "空"
else 
  echo "非空"
fi

或者不用diff file1 file2 > f1_f2 直接比较file1 file2即可
if diff file1 file2 >/dev/null
then
  echo "file1 and file2 ar……

还要跟主席想汇报一下:
if [ -z file ]
我试了一下,没有成功。下面一个成功了。

#6


我不都说了 写错了嘛

#7


该回复于2012-07-17 08:33:29被版主删除