gpt4 book ai didi

diff - 使用 diff 并忽略空目录

转载 作者:行者123 更新时间:2023-12-04 17:51:45 31 4
gpt4 key购买 nike

这是我的树

├── test
│   ├── dir1
│   └── dir2
│   ├── file
│   └── file2
└── test2
└── dir2
├── file
└── file2

我用 diff : diff -r test/ test2/
Only in test: dir1

所以唯一的区别是在 dir1 中有一个空目录( test/ )不存在于 test2/ .

我想忽略空目录作为区别。所以我希望在这种情况下 diff 告诉我 test/ 的内容与 test2/的内容相同

我怎样才能做到这一点?

最佳答案

我找到了一种方法,但我对此并不满意。
diff可以被告知排除匹配模式的文件。遗憾的是,该模式仅适用于文件名,所以我的 解决方案可能排除比预期更多的目录(和文件) .

在这里, fwiw :

diff $(find test -empty -type d -exec sh -c 'echo -n "-x $(basename $1) "' _ {} \;) -r test/ test2/

我添加了以下命令
find test -empty -type d -exec sh -c 'echo -n "-x $(basename $1) "' _ {} \;)

它输出 diff 前面的每个空目录的基本名称的排除选项 -x。使用您的示例树,它将输出:-x dir1

关于diff - 使用 diff 并忽略空目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44155872/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com