路徑名匹配功能,也叫通配(globbing)芽腾。
常用模式
模式 | 匹配項(xiàng) |
---|---|
?, * | 任一字符,任何零個(gè)或更多字符組成的字符串 |
~, ~username | 當(dāng)前用戶的主目錄,username用戶的主目錄 |
~+, ~- | 當(dāng)前工作目錄页衙,上一個(gè)工作目錄 |
[abc], [!abc]或[^abc] | abc中任一字符摊滔,不包含abc中任一字符 |
[:alpha:], [:alnum:] | 任何字母字符,任何字母字符或數(shù)字 |
[:lower:], [:upper:] | 任何小寫(xiě)字符店乐,任何大寫(xiě)字符 |
[:digit:] | 任一數(shù)字艰躺,即0-9 |
[:space:] | 任一空白字符,如制表符眨八、換行符腺兴、回車(chē)符、換頁(yè)符廉侧、空格等 |
技巧1:大括號(hào)擴(kuò)展
echo {Sunday, Monday, Tuesday, Wednesday}.log
echo file{1..3}.txt # file1.txt file2.txt file3.txt
echo file{a..c}.txt
echo file{a, b}{1, 2}.txt # 4 files
echo file{a{1, 2}, b, c}.txt # 4 files: filea1.txt filea2.txt fileb.txt filec.txt
技巧2:命令替換(``和$)
用輸出替換命令本身页响。
echo Today is `date +%A`
echo The time is $(date +%M) minutes past $(date +%1%p)
echo $host