目录中包含.zip和.rar文件,以及其它类型的文件.
仅列出.rar和.zip文件,有ls *.zip *.rar
在bash中,如何将这两种类型与一个正则表达式匹配?
Joh*_*web 22
你真的想要一个正则表达式吗?
这使用*(" globbing ")和{[...]}(" 撑杆扩展 ").
$ ls *.{zip,rar}
Run Code Online (Sandbox Code Playgroud)
对于许多更多快捷方式,请参阅此问题.
dog*_*ane 12
使用大括号扩展:
ls *.{zip,rar}
Run Code Online (Sandbox Code Playgroud)
如果必须使用正则表达式,则可以使用find:
find -regex ".*\.\(zip\|rar\)"
Run Code Online (Sandbox Code Playgroud)
在bash中,您可以打开特殊的extglob选项以使用正则表达式执行此操作:
shopt -s extglob
ls *.*(zip|rar)
Run Code Online (Sandbox Code Playgroud)
这样做的好处是即使没有文件类型,它也会列出其中一种或两种文件类型。
(与所有外壳程序glob匹配一样,如果没有匹配项,该模式将直接传递给ls;使用禁用此行为shopt -s failglob)
| 归档时间: |
|
| 查看次数: |
15293 次 |
| 最近记录: |