如何确保find
中的文件名后面有一个数字?从概念上讲:
find ./directory -name filename{number}.temp
如果我输入
find ./directory -name filename'[0-9]'*.temp
它也会给我filename'[0-9]'text.temp
格式的文件名。
答案 0 :(得分:3)
find ./directory -regex '.*/filename[0-9][0-9]*\.temp'
请注意,-regex
匹配整个路径,而不仅仅是文件名。
答案 1 :(得分:1)
旧版本的Unix find
不执行正则表达式或Kornshell样式的全局。你可以用“?”在你的glob中加上“*”,但就是这样。 Linux和Mac上的find
命令确实有-regex
表达式。
如果您的find
命令不兼容gnu并且没有-regex
参数,则需要将输出通过管道传输到grep
:
find ./directory -name 'filename*.temp' | grep '/filename[0-9].temp$'