如何解决查找具有特定名称的文件或目录的名称
我必须找到当前目录中至少包含2位数字并以非数字值结尾的文件名。 到目前为止,我已经完成了:
find . -maxdepth 1 -type f -name "[0-9]\{2,\}$[!0-9]"
但是它不起作用。有人可以帮我吗?
解决方法
\{2,\}
是一个正则表达式事物 1 ,而shell和find的-name
选项使用shell模式(也称为glob)。使用任何
ls *[0-9]*[0-9]*[!0-9]
find . -maxdepth 1 -type f -name '*[0-9]*[0-9]*[!0-9]'
*
表示任意数量的字符,[0-9]
是数字,而[!0-9]
则不是数字。
1 还请注意,在正则表达式中,[0-9]\{2,\}
将是“至少两个连续的数字”。因此它将与f1f2x
文件不匹配。而$
将完全不合适。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。