假设我在目录中有这个:
master3.txt
master3
master3old
anotherFile
我需要使用 find 返回:
master3.txt
master3
基本上,这意味着使用查找并忽略文件扩展名(如果存在)。此示例中的关键是不返回“master3old”
我想find
在 Mac OS X 上使用,这样我就可以-exec cp
在结果上运行。
使用 extglob:
shopt -s extglob
cp master3?(.*) /somewhere
它匹配master3
可选地后跟.something
find $DIR -name "master3*" | grep "master3\>" | xargs
$DIR
正在搜索的目录在 哪里。\>
表示词的结尾。
检查您的查找手册页,看看它是否有-regex
选项
find . -regex '.*/master3\(\..*\)?'