我需要在远程位置(/mnt/)查找文件,并警告某个文件名是否符合以下条件:
消极的方式也会起作用。
示例:
如果-文件名包含小写字母和/或扩展名包含大写字母
然后-回声警报
发布于 2017-11-06 12:42:15
使用find搜索文件:
find . -regex ".*/[A-Z0-9]+\.[a-z]+"这将在当前目录(.)中执行搜索,并递归地遍历子目录。
[.*/]覆盖文件路径[A-Z0-9]代表从A到Z的每一个字母(包括@vidarlo中提到的by )和从0到9的每一个数字+与前面的字符或表达式匹配一次或多次\.是一个文字点[a-z]代表从a到z的每一个字母对于某些特殊字符,可能需要使用例如[[:upper:]]:
find . -regextype egrep -regex ".*/[[:upper:][:digit:]]+\.[[:lower:]]+"要将find的S测试结合起来,就有-a和-o,对于您的示例来说,这可能会有所帮助:
find /mnt/ \( -name "*[a-z]*.*" -o -name "*.*[A-Z]*" \) -exec echo {} +https://askubuntu.com/questions/973506
复制相似问题