是否bash
可以使用通配符来指定“当前目录中的所有文件,除了[与特定(通配符)模式匹配的文件]”?例如,“所有不匹配 *~ 的文件”
或者更一般地说,是否可以使用第二个过滤或否定规范来限定通配符文件规范?
当然。假设您希望所有文件的名称中都包含字符串“foo”,但不希望所有文件也包含“bar”。所以你要
foo1
foo2
Run Code Online (Sandbox Code Playgroud)
但你不想
foobar1
Run Code Online (Sandbox Code Playgroud)
您可以使用简单的通配符来做到这一点,如下所示:
for f in foo!(bar)*; echo $f; done
Run Code Online (Sandbox Code Playgroud)
或者
ls foo[^bar]*
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请参见此处:http://www.tldp.org/LDP/abs/html/globbingref.html请注意,这两种方法都有其陷阱。您可能最好使用find
.
归档时间: |
|
查看次数: |
11495 次 |
最近记录: |