请帮我解决以下问题:
让它成为三个文件:
file-aaa.sh
file-bbb.sh
file-xxx.sh
在 bash 脚本中我有变量
$a=aaa
$b=bbb
现在,我想执行如下操作:
find . -name "file-[$a|$b].sh"
并期望在输出中得到两个文件。 我做错了什么?
最佳答案
你可以使用这个发现:
find . -name "file-$a.sh" -o -name "file-$b.sh"
使用 -regex
选项将其合并为一个:
在 OSX 上:
find -E . -regex ".*file-($a|$b)\.txt"
在 Linux 上:
find . -regextype posix-extended -regex ".*file-($a|$b)\.txt"
关于regex - “查找”使用带变量的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24552144/