Jar*_*aus 4 shell pattern-matching
例如,我想删除目录中的所有文件,除了.tar
它们来自哪里的文件。我可以做这样的事情:
find . -maxdepth 0 | grep -v '.tar$' | xargs rm -f
Run Code Online (Sandbox Code Playgroud)
但是有没有办法只使用 rm 和shell 模式匹配?bash
如果使用 vanilla 无法完成,请随意使用或其他常用shell 或扩展选项指定它sh
。
我发现了一个类似的问题,即使用 find 避免目录和子目录,但不使用 shell 模式。
您可以使用扩展的通配符来做到这一点。
shopt -s extglob
Run Code Online (Sandbox Code Playgroud)
然后
rm !(file.tar)
Run Code Online (Sandbox Code Playgroud)
这至少适用于 bash 3.2.39
归档时间: |
|
查看次数: |
1922 次 |
最近记录: |