如何在 Dropbox 文件夹中查找并比较类似的文件?

如何在 Dropbox 文件夹中查找并比较类似的文件?

我正在使用 Dropbox,最后得到了一些文件,例如:
prefs (home's conflicted copy 2009-07-20).js

我想要做的是找到所有“冲突的副本......”文件,然后将每个文件与其无冲突的版本进行比较。

例如,以下命令给出结果:

$ find . -name "*onflict*" -exec ls -ld {} \;
-rw-r--r-- 1 eric eric 24203 2009-07-19 14:42 ./prefs (home's conflicted copy 2009-07-20).js

但我想要像这样的输出:

-rw-r--r-- 1 eric eric 24429 2009-07-21 11:43 prefs.js
-rw-r--r-- 1 eric eric 24203 2009-07-19 14:42 prefs (home's conflicted copy 2009-07-20).js

然后我就可以决定如何处理冲突的副本了。有什么想法吗?

答案1

我想到了一些似乎可行的方法,但我欢迎提出改进建议,包括使其更清洁:

find . -name "*onflict*" | while read name; do ls -ld "$name"; ls -ld "${name/ (*onflict*)/}"; echo -n "$name" | xargs -0 -p rm ; echo ; done

采用更易于阅读和输入的格式:

find . -name "*onflict*" | \
while read name; do 
    ls -ld "$name"
    ls -ld "${name/ (*onflict*)/}"
    echo -n "$name" | xargs -0 -p rm 
    echo 
done

参考:

答案2

匹配冲突的文件名后,使用正则表达式将括号和空格替换为星号,然后执行以下操作:

ls -d "prefs*.js"

相关内容