第九節 通配符
標籤(空格分隔): Linux實戰教學筆記html
---更多詳細資料請點我查看linux
第1章 回顧特殊符號
| #管道符,或者(正則) > #輸出重定向 >> #輸出追加劇定向 < #輸入重定向 << #追加輸入重定向 ~ #當前用戶家目錄 `` $() #引用命令被執行後的結果 $ #以。。。結尾(正則) ^ #以。。。開頭(正則) * #匹配所有字符,通配符 ? #任意一個字符,通配符 # #註釋 & #讓程序或腳本切換到後臺執行 && #而且 同時成立 [] #表示一個範圍(正則,通配符) {} #產生一個序列(通配符) . #當前目錄的硬連接 .. #上級目錄的硬連接
第2章 通配符
他是shell的內置功能
通配符,用過DOS的應該很瞭解,也很經常使用。
通配符,指包含這些字符的字符串「?」,「*」,「【」,{}shell
通配符含義===>匹配文件名vim
符號 | 做用 |
---|---|
* | 匹配任何字符串/文本,包括空字符串;*表明任意字符(0個或多個) ls file * |
? | 匹配任何一個字符(不在括號內時)?表明人意1個字符 ls file 0 |
[abcd] | 匹配abcd中任何一個字符 |
[a-z] | 表示範圍a到z,表示範圍的意思 []匹配中括號中任意一個字符 ls file 0 |
{..} | 表示生成序列。以逗號分隔,且不能有空格 |
補充 | |
[!abcd] | 或[^abcd]表示非,表示不匹配括號裏面的任何一個字符 |
2.1 通配符詳解
2.1.1 「表示任何字符串」
ls .log .txtruby
2.1.2 ? 任何一個字符
2.1.3[abcd]表示匹配中括號內任意一個字符就成立
2.1.4 通配符是用來找文件(匹配文件名)
2.1.5 {}生成序列
2.1.6 利用 {} 來備份
2.1.7 [^abcd] !^表示非,取反
不經常使用,瞭解便可markdown
2.2 []與{}區別
[]只能用來找文件
{} 用來找文件,或創造文件,生成序列運維
2.3 通配符小結
通配符含義===>匹配文件名post
符號 | 做用 | |
---|---|---|
* | 匹配任何字符串/文本,包括空字符串;表明任意字符(0個或多個) ls file | |
? | 匹配任何一個字符(不在括號內時)?表明人意1個字符 ls file 0 | |
[abcd] | 匹配abcd中任何一個字符 | |
[a-z] | 表示範圍a到z,表示範圍的意思 []匹配中括號中任意一個字符 ls file 0 | |
{..} | 表示生成序列。以逗號分隔,且不能有空格 | |
補充 | ||
[!abcd] | 或[^abcd]表示非,表示不匹配括號裏面的任何一個字符 |
第3章 特殊符號
3.1 管道部分
命令1|命令2 ###管道符號,傳遞的時普通的文本,字符串,來自於前一個命令。 |xargs ###管道符號,與xargs傳遞的是把文本,字符串變成了文件名
3.2 目錄結構
. #當前目錄(或「任意一個字符」正則) .. #當前目錄的上一級目錄
3.3 重定向符號
> #輸出重定向,會清空原文內容,而後在向文件裏面追加內容 >> #追加輸出重定向,追加到文件的最後一行 < #輸入重定向tr xargs << #cat 用來給文件追加多行文本
例如: >/dev/null 2>&1spa
3.4未分類特殊符號
3.4.1 #表示註釋
linux 會忽略他,給運維人員看的,解釋說明用的。code
3.4.2 $ 引用變量 去變量的值或普通用戶的命令提示符
1,shell
$變量 ===>取變量裏面的內容
2,awk
$取列 $數字
3,普通用戶的命令提示符
[root@chensiqi ~]$
3.4.3 ``(esc下面)反引號 引用命令的結果,至關於$()
3.4.4 ;分隔多個命令,沒有邏輯關係,只是一步一步執行。
1,shell
pwd;pwd;pwd;hostname
至關於
pwd
pwd
pwd
hostname
2,sed
[root@chensiqi ~]$ seq 100 | sed -n '20p;50p;100p'
20
50
100
3.4.5 - (cd - ;su -)
- cd - ###返回上一次的工做目錄,返回上一次的位置
- su - ###切換用戶,從新加載環境變量
3.4.6 ~ 當前用戶的家目錄,老家
[root@chensiqi ~]$ cd ~
會直接返回當前用戶的家目錄
3.4.7 / 根或者路徑分隔符
3.4.8 轉義符號或者叫屏蔽別名
. #(正則裏表明任意一個字符) \. #只表明一個點的符號
3.4.9 ! 表示非
1,表示非
2,表示強制
vi/vim
vi 強制退出 (q!)
3.4.10 && 表示而且
特別注意
&&符號只有當前邊的命令執行成功纔會執行後邊的命令
第4章 經常使用特殊符號及通配符
通配符 | 含義 |
---|---|
* | 表明任意(0個或多個)字符 |
? | 表明任意1個字符 |
[abcd] | 匹配中括號中任意一個字符 |
{} | 中間爲命令區塊組合或內容生成 |
特殊符號 | 含義 |
;分號 | 連續不一樣命令的分隔符 |
# | 配置文件註釋 |
| | 管道,將前一個命令的結果交給後一命令繼續處理 |
~ | cd ~ 當前用戶的家目錄 |
- | cd - 用戶上一次所在的目錄,由變量OLDPWD控制;su - 切換用戶的系統環境 |
.. | 上一級目錄 |
. | 當前目錄(當前目錄三種寫法:ls或ls .或ls ./) |
$ | 變量前須要加的符號$OLDPWD;普通用戶的命令提示符 |
/ | 根;路徑分隔符號 |
\ | 屏蔽系統別名;轉義字符; |
> | 輸出重定向 |
>> | 輸出追加劇定向 |
< | 輸入重定向 |
<< | 輸入追加劇定向 |
‘’ | 單引號,不具備變量置換功能,輸出時所見即所得 |
「」 | 雙引號,具備變量置換功能,解析變量輸出 |
`` | 反引號(倒引號),``中間是命令,會先執行,等價於$() |
! | 邏輯運算中的「非」;vi/vim中的強制退出;!+ 字母 調出最近一次以此字母開頭的命令;!!使用最近一次操做的命令 |
&& | 當前一個指令執行成功時,執行後一個指令 |
雙管道符 | 當前一個指令執行失敗時,執行後一個指令 |
第5章 單引號,雙引號,不加引號的區別
-
單引號:所見即所得。
-
雙引號:解析特殊符號,特殊符號有了本來的特殊意思
-
不加引號:比較特殊,支持通配符