我从一个失败的rsync命令中找到了很多残留文件。它们都有5个(随机)字符的文件扩展名。是否有一个命令可以找到扩展名为4个字符的所有文件以及更递归的文件?
rsync剩余文件名示例: foo.jpg.hzmkjt7
我已经找到了一种用rsync来防止这种情况的方法,但我现在要做的就是清理那些剩菜.
发布于 2015-07-09 10:25:27
使用bash,一种选择是像这样使用globstar:
shopt -s globstar # enable the shell option
echo **/*.????? # to test which files are matched
rm **/*.????? # if you're happy该模式匹配当前目录中的任何文件或以.结尾的任何子目录,后面跟着5个字符。
与其将任何字符与?匹配,不如通过将glob更改为类似于**/*.[[:alnum:]][[:alnum:]][[:alnum:]][[:alnum:]][[:alnum:]]的内容来匹配5个字母数字字符。
发布于 2015-07-09 09:58:45
您可以为此编写一个正则表达式:
find /your/dir -regextype posix-extended -regex '.*\..{4,}$'也就是说,查找与4或更多的.一起结束的文件。
关于如何使用来自How to use regex in file find的正则表达式的想法。
https://stackoverflow.com/questions/31314104
复制相似问题