在 Shell 中執行命令時會先進行預處理,將通配符替換成匹配的文件或目錄,如果沒有找到匹配,則將通配符當成普通字符處理。
通配符wildcar | |
符號 | 意義 |
* | 代表0個到無窮多個任意字符 |
? | 代表一定有一個任意字符 |
[] | 同樣代表一定有一個在中括號內的字符(非任意字符)。例如[abcd]代表一定有一個字符,可能是a,b,c,d這四個任何一個 |
[-] | 若有減號在中括號時,代表在編碼順序內的所有字符。例如[0-9]代表0到9之間的所有數字,因爲數字的語系編碼是連續的 |
[^] | 任意中括號內的第一個字符爲指數符號(^),那表示反向選擇,例如[^abc]代表一定有一個字符,只要是非a,b,c的其他字符就接受的意思。 |
{} | 表示一個範圍:{..} [root@www ~]# echo {a..d} a b c d [root@www ~]# echo {1..10} 1 2 3 4 5 6 7 8 9 10 表示至少有兩個以上的組合:使用逗號分隔字符集 {,} [root@www ~]# echo a{b,c,d} ab ac ad [root@www ~]# mkdir -v a{,b} mkdir: created directory `a' mkdir: created directory `ab' |