Bash:在 if 语句中使用 diff 的结果

标签 bash diff

我正在编写一个简单的 Bash 脚本来检测文件夹何时被修改。

它非常接近于:

ls -lR $dir > a
ls -lR $dir > b

DIFF=$(diff a b) 
if [ $DIFF -ne 0 ] 
then
    echo "The directory was modified"

不幸的是,if 语句打印错误:[: -ne: unary operator expected

我不确定我的脚本有什么问题,有人可以帮助我吗?

非常感谢!

贾里

最佳答案

ls -lR $dir > a
ls -lR $dir > b

DIFF=$(diff a b) 
if [ "$DIFF" != "" ] 
then
    echo "The directory was modified"
fi

关于Bash:在 if 语句中使用 diff 的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3611846/

相关文章:

linux - 执行 bash 的 Perl 转义参数

linux - 更改文件中附加数字的单词

bash - 从另一个文件中删除包含 ID 的每一行

algorithm - 差异化更快

javascript - Google-diff-match 避免显示新行?

java - Java 中的差异、补丁和反向补丁

bash - 如何递归地用变量替换 configure.ac 中 bash 变量中的路径?

linux 检查子目录的文件数量 - 当搜索的子目录不存在时提供错误的变量结果

linux - 使用 diff 命令比较两个 csv 文件的特定列

java - 是否可以使用 DaisyDiff 保留输入标记?