我在一个目录中,其中有两个文本文件:
$ touch test1.txt
$ touch test2.txt
当我尝试使用某种模式列出文件(使用 Bash)时,它可以工作:
$ ls test?.txt
test1.txt test2.txt
$ ls test{1,2}.txt
test1.txt test2.txt
然而,当一个模式由一个包含在 中的命令产生时$()
,只有一个模式有效:
$ ls $(echo 'test?.txt')
test1.txt test2.txt
$ ls $(echo 'test{1,2}.txt')
ls: cannot access test{1,2}.txt: No such file or directory
这里发生了什么?为什么模式{1,2}
不起作用?