Linux 命令行通配符及轉(zhuǎn)義符的實(shí)現(xiàn)
我們想對(duì)一類文件批量操作,例如批量查看硬盤文件屬性,那么正常命令會(huì)是:
[root@linuxprobe ~]# ls /dev/sda [root@linuxprobe ~]# ls /dev/sda1 [root@linuxprobe ~]# ls /dev/sda2 [root@linuxprobe ~]# ls /dev/sda3
但有些時(shí)候確實(shí)不知道分區(qū)的
通配符
星號(hào)(*)代表匹配零個(gè)或多個(gè)字符
huanyu@ubuntu:~$ ls -l /dev/sda*

問號(hào)(?)代表匹配單個(gè)字符
huanyu@ubuntu:~$ ls -l /dev/sda?

中括號(hào)內(nèi)加上數(shù)字[0-9]代表匹配0~9之間的單個(gè)數(shù)字的字符,而中括號(hào)內(nèi)加上字母[abc]則是代表匹配a、b、c三個(gè)字符中的任意一個(gè)字符
huanyu@ubuntu:~$ ls -l /dev/sda[0-9] huanyu@ubuntu:~$ ls -l /dev/sda[135]

[root@linuxprobe ~]# ls /dev/sda* /dev/sda /dev/sda1 /dev/sda2
[root@linuxprobe ~]# ls /dev/sda? /dev/sda1 /dev/sda2
[root@linuxprobe ~]# ls /dev/sda[0-9] /dev/sda1 /dev/sda2
[root@linuxprobe ~]# ls /dev/sda[135] /dev/sda1
轉(zhuǎn)義符

反斜杠(\):使反斜杠后面的一個(gè)變量變?yōu)閱渭兊淖址?/p>
huanyu@ubuntu:~$ echo "Price is \$$PRICE"

反引號(hào)(``):把其中的命令執(zhí)行后返回結(jié)果
huanyu@ubuntu:~$ echo `uname -a`

示例
定義名稱為PRICE的變量值為5:
[root@linuxprobe ~]# PRICE=5
想要輸出”價(jià)格是5″:
[root@linuxprobe ~]# echo "Price is $PRICE" Price is 5
想要輸出”價(jià)格是$5″,但因?yàn)槊涝?hào)與代表變量取值的$符號(hào)沖突了,所以報(bào)錯(cuò)了:
[root@linuxprobe ~]# echo "Price is $$PRICE" Price is 3767PRICE
添加一個(gè)反斜杠,將第一個(gè)$符號(hào)轉(zhuǎn)義:
[root@linuxprobe ~]# echo "Price is \$$PRICE" Price is $5
使用單引號(hào),變量將不再被取值:
[root@linuxprobe ~]# echo 'Price is \$$PRICE' Price is \$$PRICE
執(zhí)行uname -a后可以查看到本機(jī)內(nèi)核的版本與架構(gòu)信息(反引號(hào)里面的命令會(huì)被執(zhí)行):
[root@linuxprobe ~]# echo `uname -a` Linux linuxprobe.com 3.10.0-123.el7.x86_64 #1 SMP Mon May 5 11:16:57 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持本站。
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
關(guān)注官方微信