Wildcards
萬用字元:如何排除字元串?(不含)
我今天在練習萬用字元的使用.. 很有趣。
完全符合我預期的最複雜的事情是:
ls [![:digit:]]*[a-z][0-9][0-9][0-9][aA-zZ]*[![:digit:]]
但我實際上並沒有設法排除一個字元串。
如何僅列出不包含“test”的文件?
這裡有一些我已經嘗試過的例子:
ls *!("test")* ls !("test") ls !=*"test"* ls !(*"test"*) ls *^test* ls *(^test)* ls (^test)* ls !test* ls !*test* ls *!test* ls !{test} ls !*{test}* ls *!{test}*
在 Bash 中:
$ shopt -s extglob $ touch a b c test $ ls !(*test*) a b c
或者,您可以使用
find
以下命令:find -type f ! -name '*test*'