03_03 bash特性详解(下)
命令別名
alias COMALIAS='COMMAND [options] [arguments]'
在shell中定義的別名僅在當(dāng)前shell生命周期中有效:別名的有效范圍僅為當(dāng)前shell進(jìn)程:
ualias COMALIAS 刪除別名
alias cp = 'cp -i'
命令替換 $(COMMAND) 反引號(hào) `COMMAND`
把命令中某個(gè)子命令替換為其執(zhí)行結(jié)果的過程
echo "the current directory is /etc"
echo "the current directory is $(pwd)"
file-2013-12-12-12-13.txt
date +%F-%H-$M-%S
touch ./file-$(date +%F-%H-$M-%S).txt
bash支持的引號(hào)
``: 命令替換
“”,雙引號(hào),弱引用 可以實(shí)現(xiàn)變量替換
‘’,單引號(hào) 強(qiáng)引用 不可以實(shí)現(xiàn)變量替換
文件名統(tǒng)配 globbing
* ?任意長(zhǎng)度的任意字符 沒有長(zhǎng)度 也可以
?匹配任意單個(gè)字符
[] 指定任意指定范圍內(nèi)的任意單個(gè)字符
? ? [abc] [a-z] [a-zA-Z0-9]
[^]:匹配指定范圍外的任意單個(gè)字符
? ? [^0-9]非數(shù)字
[:space:]空白字符
[[:space:]]空白字符集
[:punct:]標(biāo)點(diǎn)符號(hào)
[:lower:]小寫字母
[:upper:]大寫字母
[:alpha:] 大小寫字母
[:digit:] 數(shù)字
[:alnum:] 數(shù)字和大小寫字母
也支持取反?[^[:space:]]
可以查看 man 7 glob
touch a123 abc abc123 xyz x12 xyz123
以一個(gè)字母a 開頭
ls a* ?=>a123 abc abc123?
字母a開頭 3結(jié)尾的字符
ls a*3
字母開頭 后面任意數(shù)字的文件
[a-zA-Z]*[0-9]
?y* ==>xyz xyz123
[[:alpha:]]*[[:space:]]*[[:alpha:]]
字母開頭 字母結(jié)尾 中間有空白字符
*[0-9]* *[[:digit:]]*
數(shù)字結(jié)尾 不包含空白的字符 ? ?*[^[:space:]]*[0-9] 有問題的。。。正則可以處理
非字母 非數(shù)字: *[^[:alnum:]]*
轉(zhuǎn)載于:https://blog.51cto.com/jiawu/1586768
總結(jié)
以上是生活随笔為你收集整理的03_03 bash特性详解(下)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 十三、流程控制之if语句
- 下一篇: 人人都是 DBA(X)资源信息收集脚本汇