欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > Linux Shell 通配符、元字符、轉(zhuǎn)義符使用實(shí)例介紹

Linux Shell 通配符、元字符、轉(zhuǎn)義符使用實(shí)例介紹

熱門標(biāo)簽:旅游路書地圖標(biāo)注 適用的400電話辦理 iphone地圖標(biāo)注我的店鋪 成都米蘭申請 哪種品牌的400電話申請 廣東電話機(jī)器人開戶 ai智能外呼系統(tǒng)是什么 百度地圖地圖標(biāo)注客服多少 百度ai電銷機(jī)器人排名

下面是一個實(shí)例:

[chengmo@localhost ~/shell]$ ls 
a.txt b.txt c.old 

#2 

[chengmo@localhost ~/shell]$ ls *.txt 
a.txt b.txt 

#3 

[chengmo@localhost ~/shell]$ ls d*.txt 
ls: 無法訪問 d*.txt: 沒有那個文件或目錄

從上面這個實(shí)例,不知道大家有沒有發(fā)現(xiàn)問題呢。我們先了解一下,通配符相關(guān)知識,再分析下這個實(shí)例吧。

一、linux shell通配符(wildcard)

通配符是由shell處理的(不是由所涉及到命令語句處理的,其實(shí)我們在shell各個命令中也沒有發(fā)現(xiàn)有這些通配符介紹), 它只會出現(xiàn)在 命令的“參數(shù)”里(它不用在 命令名稱里, 也不用在 操作符上)。當(dāng)shell在“參數(shù)”中遇到了通配符時,shell會將其當(dāng)作路徑或文件名去在磁盤上搜尋可能的匹配:若符合要求的匹配存在,則進(jìn)行代換(路徑擴(kuò)展);否則就將該通配符作為一個普通字符傳遞給“命令”,然后再由命令進(jìn)行處理。總之,通配符 實(shí)際上就是一種shell實(shí)現(xiàn)的路徑擴(kuò)展功能。在 通配符被處理后, shell會先完成該命令的重組,然后再繼續(xù)處理重組后的命令,直至執(zhí)行該命令。 

我們回過頭分析上面命令吧:在第2個命令中,*.txt 實(shí)際shell搜索文件,找到了符合條件的文件,命令會變成:ls a.txt b.txt ,實(shí)際在執(zhí)行l(wèi)s 時候傳給它的是a.txt b.txt . 

而命令3,d*.txt 由于當(dāng)前目錄下面沒有這樣的文件或目錄,直接將”d*.txt” 作為ls 參數(shù),傳給了 ls .這個時候”*” 只是一個普通的 ls 參數(shù)而已,已經(jīng)失去了它通配意義。 由于找不到文件,所以會出現(xiàn):無法訪問提示!

了解了shell通配符,我們現(xiàn)在看下,shell常見通配符有那一些了。

shell常見通配符:

字符 含義 實(shí)例
* 匹配 0 或多個字符 a*b  a與b之間可以有任意長度的任意字符, 也可以一個也沒有, 如aabcb, axyzb, a012b, ab。
? 匹配任意一個字符 a?b  a與b之間必須也只能有一個字符, 可以是任意字符, 如aab, abb, acb, a0b。
[list]  匹配 list 中的任意單一字符 a[xyz]b   a與b之間必須也只能有一個字符, 但只能是 x 或 y 或 z, 如: axb, ayb, azb。
[!list]  匹配 除list 中的任意單一字符 a[!0-9]b  a與b之間必須也只能有一個字符, 但不能是阿拉伯?dāng)?shù)字, 如axb, aab, a-b。
[c1-c2] 匹配 c1-c2 中的任意單一字符 如:[0-9] [a-z] a[0-9]b  0與9之間必須也只能有一個字符 如a0b, a1b... a9b。
{string1,string2,...} 匹配 sring1 或 string2 (或更多)其一字符串 a{abc,xyz,123}b    a與b之間只能是abc或xyz或123這三個字符串之一。

需要說明的是:通配符看起來有點(diǎn)象正則表達(dá)式語句,但是它與正則表達(dá)式不同的,不能相互混淆。把通配符理解為shell 特殊代號字符就可。而且涉及的只有,*,? [] ,{} 這幾種。

二、shell元字符(特殊字符 Meta) 

shell 除了有通配符之外,由shell 負(fù)責(zé)預(yù)先先解析后,將處理結(jié)果傳給命令行之外,shell還有一系列自己的其他特殊字符。

字符 說明
IFS 由 space> 或 tab> 或 enter> 三者之一組成(我們常用 space )。
CR 由 enter> 產(chǎn)生。
= 設(shè)定變量。
$ 作變量或運(yùn)算替換(請不要與 shell prompt 搞混了)。
> 重導(dǎo)向 stdout。 *
重導(dǎo)向 stdin。 *
| 命令管線。 *
重導(dǎo)向 file descriptor ,或?qū)⒚钪糜诒尘硤?zhí)行。 *
( ) 將其內(nèi)的命令置于 nested subshell 執(zhí)行,或用于運(yùn)算或命令替換。 *
{ } 將其內(nèi)的命令置于 non-named function 中執(zhí)行,或用在變量替換的界定范圍。
; 在前一個命令結(jié)束時,而忽略其返回值,繼續(xù)執(zhí)行下一個命令。 *
在前一個命令結(jié)束時,若返回值為 true,繼續(xù)執(zhí)行下一個命令。 *
|| 在前一個命令結(jié)束時,若返回值為 false,繼續(xù)執(zhí)行下一個命令。 *
! 執(zhí)行 history 列表中的命令。*

加入”*” 都是作用在命令名直接。可以看到shell 元字符,基本是作用在命令上面,用作多命令分割(或者參數(shù)分割)。因此看到與通配符有相同的字符,但是實(shí)際上作用范圍不同。所以不會出現(xiàn)混淆。  

以下是man bash 得到的英文解析:

metacharacter
              A character that, when unquoted, separates words.  One of the following:
              |  ; ( ) > space tab
control operator
              A token that performs a control function.  It is one of the following symbols:
              || ; ;; ( ) | newline>

三、shell轉(zhuǎn)義符  

有時候,我們想讓 通配符,或者元字符 變成普通字符,不需要使用它。那么這里我們就需要用到轉(zhuǎn)義符了。 shell提供轉(zhuǎn)義符有三種。

字符 說明
‘’(單引號) 又叫硬轉(zhuǎn)義,其內(nèi)部所有的shell 元字符、通配符都會被關(guān)掉。注意,硬轉(zhuǎn)義中不允許出現(xiàn)’(單引號)。
“”(雙引號) 又叫軟轉(zhuǎn)義,其內(nèi)部只允許出現(xiàn)特定的shell 元字符:$用于參數(shù)代換 `用于命令代替
\(反斜杠)   又叫轉(zhuǎn)義,去除其后緊跟的元字符或通配符的特殊意義。

man bash 英文解釋如下:

There are three quoting mechanisms: the escape character, single quotes, and double quotes.

實(shí)例:

[chengmo@localhost ~/shell]$ ls \*.txt
ls: 無法訪問 *.txt: 沒有那個文件或目錄

[chengmo@localhost ~/shell]$ ls '*.txt'
ls: 無法訪問 *.txt: 沒有那個文件或目錄

[chengmo@localhost ~/shell]$ ls 'a.txt'
a.txt

[chengmo@localhost ~/shell]$ ls *.txt
a.txt  b.txt

可以看到,加入了轉(zhuǎn)義符 “*”已經(jīng)失去了通配符意義了。

四、shell解析腳本的過程

看到上面說的這些,想必大家會問到這個問題是,有這么想特殊字符,通配符,那么 shell在得到一條命令,到達(dá)是怎么樣處理的呢?我們看下下面的圖:

如果用雙引號包括起來,shell檢測跳過了1-4步和9-10步,單引號包括起來,shell檢測就會跳過了1-10步。也就是說,雙引號 只經(jīng)過參數(shù)擴(kuò)展、命令代換和算術(shù)代換就可以送入執(zhí)行步驟,而單引號轉(zhuǎn)義符直接會被送入執(zhí)行步驟。而且,無論是雙引號轉(zhuǎn)義符還是單引號轉(zhuǎn)義符在執(zhí)行的時候能夠告訴各個命令自身內(nèi)部是一體的,但是其本身在執(zhí)行時是并不是命令中文本的一部分。

標(biāo)簽:紹興 陜西 汕頭 泰安 大連 遼陽 茂名 玉林

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Linux Shell 通配符、元字符、轉(zhuǎn)義符使用實(shí)例介紹》,本文關(guān)鍵詞  Linux,Shell,通配符,元,字符,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Linux Shell 通配符、元字符、轉(zhuǎn)義符使用實(shí)例介紹》相關(guān)的同類信息!
  • 本頁收集關(guān)于Linux Shell 通配符、元字符、轉(zhuǎn)義符使用實(shí)例介紹的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    亚洲男人天堂一区| 成人性生交大片免费| 欧美xxxx黑人| 91成人免费在线| 中文字幕中文乱码欧美一区二区| 国产一区视频网站| 久久国产柳州莫菁门| 精品国精品国产| 久久99日本精品| a天堂中文字幕| 26uuu精品一区二区| 久久成人av少妇免费| 国产av自拍一区| 精品99一区二区三区| 久久精品av麻豆的观看方式| 3d动漫精品啪啪一区二区下载| 日韩一区二区三区精品视频| 日韩高清不卡一区二区三区| 亚洲色图14p| 精品国产91亚洲一区二区三区婷婷| 久久国内精品自在自线400部| 亚洲精品国产91| 欧美精品一区二| 国产麻豆欧美日韩一区| 任我爽在线视频| 中文字幕一区二区三区av| 成人黄色av电影| 在线观看亚洲精品视频| 一区二区日韩电影| 国产麻豆剧传媒精品国产av| 日韩精品中文字幕一区| 国产综合久久久久影院| 色欲人妻综合网| 亚洲一区二区三区激情| 精品无码国产一区二区三区51安| 欧美成人一区二区三区片免费| 久久国产精品第一页| 成年人免费视频播放| 国产精品久久久99| 黑人巨大猛交丰满少妇| 欧美一级二级在线观看| 国产一区二区伦理片| 国产又爽又黄网站| 五月激情丁香一区二区三区| 成人精品999| 国产精品乱码一区二三区小蝌蚪| 97se亚洲国产综合自在线| 欧美人牲a欧美精品| 免费成人你懂的| 国产美女久久久久久| 亚洲一区二区三区四区在线观看| 成人午夜剧场视频网站| 中文字幕免费不卡| 亚洲AV成人精品| 亚洲精品在线免费播放| 不卡视频一二三| 91精选在线观看| 国产一区不卡精品| 欧美亚洲动漫另类| 久久精品99国产国产精| 色婷婷精品久久二区二区蜜臂av | 91丨porny丨户外露出| 欧美日韩免费视频| 国产综合久久久久久鬼色| 欧美影院一区二区| 精品一二三四区| 欧美四级电影在线观看| 激情综合网天天干| 欧美视频精品在线| 国产精品一区二区果冻传媒| 欧美午夜一区二区三区| 国产在线不卡一卡二卡三卡四卡| 在线观看av一区| 激情图片小说一区| 在线播放欧美女士性生活| 国产一二精品视频| 538在线一区二区精品国产| 国产91富婆露脸刺激对白| 91精品国产aⅴ一区二区| 成人开心网精品视频| 日韩欧美综合在线| 91视频你懂的| 久久久久国产一区二区三区四区| 国产人妖在线观看| 国产精品午夜久久| 一区二区三区四区免费| 亚洲黄色小视频| sm捆绑调教视频| 日韩专区中文字幕一区二区| 日本aⅴ在线观看| 国内精品伊人久久久久av一坑| 欧美精品久久一区二区三区| 不卡大黄网站免费看| 久久日韩粉嫩一区二区三区| 亚洲啪av永久无码精品放毛片 | 欧美激情一区二区三区全黄| 午夜男人的天堂| 亚洲免费av高清| 麻豆网址在线观看| 理论片日本一区| 717成人午夜免费福利电影| 99精品在线观看视频| 国产三级久久久| 免费人成又黄又爽又色| 日韩精品国产欧美| 欧美乱熟臀69xxxxxx| 99久久精品国产麻豆演员表| 日本一区二区免费在线观看视频 | 国产精品久久久久aaaa| 国产日韩精品中文字无码| 青青草国产精品97视觉盛宴| 欧美日韩精品一区二区三区| 99久久久国产精品免费蜜臀| 国产精品―色哟哟| 麻豆视频免费在线播放| 九九视频精品免费| 精品国产不卡一区二区三区| 内射中出日韩无国产剧情| 午夜在线电影亚洲一区| 欧美日韩电影一区| 精品国产aⅴ一区二区三区东京热| 亚洲伦在线观看| 日本乱人伦aⅴ精品| 不卡高清视频专区| 自拍视频在线观看一区二区| 国产性生活大片| 成人av网站在线观看| 国产精品乱人伦一区二区| 精品国产视频一区二区三区| 国产98色在线|日韩| 欧美国产亚洲另类动漫| 日本 欧美 国产| 成人看片黄a免费看在线| 亚洲天堂福利av| 欧美做爰猛烈大尺度电影无法无天| hitomi一区二区三区精品| 日韩理论片在线| 欧美性大战久久久久久久| 日韩高清一二三区| 亚洲国产成人av网| 欧美一区二区三区在| 醉酒壮男gay强迫野外xx| 久久精品噜噜噜成人av农村| 26uuuu精品一区二区| 成人黄色短视频| 不卡的av中国片| 亚洲午夜精品一区二区三区他趣| 欧美高清一级片在线| 国产ts丝袜人妖系列视频| 国产在线观看一区二区| 国产精品青草综合久久久久99| 男人晚上看的视频| 99久久婷婷国产综合精品电影| 亚洲综合视频网| 欧美一区二区精品| 91资源在线播放| 成人免费视频视频| 亚洲午夜电影网| 日韩欧美黄色影院| 国产亚洲精品久久久久久豆腐| 成人黄色电影在线 | 曰韩精品一区二区| 欧美一区欧美二区| 国产综合精品久久久久成人av| 成人影视亚洲图片在线| 亚洲综合免费观看高清完整版在线| 91精品婷婷国产综合久久性色| 精品欧美一区二区久久久| 成人丝袜视频网| 亚洲电影视频在线| 久久精品这里都是精品| 一本久久精品一区二区| 性色av蜜臀av浪潮av老女人| 经典三级在线一区| 亚洲欧美日韩国产成人精品影院| 欧美高清视频在线高清观看mv色露露十八 | 日韩精品91亚洲二区在线观看| 久久夜色精品国产噜噜av| 91aaa在线观看| 大又大又粗又硬又爽少妇毛片 | 黄视频网站免费看| 日本不卡视频一区| 国产精选一区二区三区| 亚洲自拍与偷拍| 久久久久久久一区| 欧美视频一区二区在线观看| 国产123在线| 伊人av在线播放| 国产麻豆午夜三级精品| 亚洲一卡二卡三卡四卡五卡| 久久免费看少妇高潮| 欧美手机在线视频| 五月婷婷婷婷婷| 年下总裁被打光屁股sp| 国内成人自拍视频| 亚洲大片免费看| 国产精品久久久久影视| 日韩一区二区三区视频在线观看 | 国产精品911| 五月婷婷色综合|