12.25 -特殊符號,通配符與正則表達式
特殊符號,通配符與正則表達式
內容:
1. 特殊符號系列
2. 通配符
3. 正則表達式分類
4. 正則與通配符區別
第1章 特殊符號
1.1 無分類系列
$ 1.命令行 取出變量內容 echo $LANG
2.awk中 取某一列 awk '{print $1}' xukai.txt
3.普通用戶的命令提示符 [oldboy@oldboy ~]$
! 1.find awk 命令中 取反 find /data ! -name
2.命令行中 取歷史命令並執行
!awk === 取出最近一次以awk開頭命令並執行
history |grep awk
ctrl + r 輸入awk
| 管道
# 1.註釋 解釋說明
2.root用戶的命令提示符 [root@oldboy /]#
1.2 引號系列
$() `` 先運行裏面的命令,把顯示到屏幕上的內容留下來
'' 所見即所得 單引號的內容會原封不動顯示出來
"" 對雙引號裏面的特殊符號進行解析 $ $() `` !
1.3 重定向系列
> 1> 重定向符號
>> 1>> 追加輸出重定向
2> 錯誤輸出重定向
2>> 錯誤追加輸出重定向
< 輸入重定向 xargs
<< 追加輸入重定向 cat文件中追加多行
1.4 位置系列
. 當前目錄
.. 當前目錄上級目錄
~ 用戶的家目錄
root ~ /root
oldboy ~ /home
1.5 判斷
&& 並且 前面的命令執行《成功》之後 再執行後面的命令
[root@oldboy oldboy]# echo "nice" && echo "good"
nice
good
[root@oldboy oldboy]# cho "nice" && echo "good"
-bash: cho: command not found
|| 或者 前面的命令執行《失敗》之後 再執行後面的命令
[root@oldboy oldboy]# cho "nice" || echo "good"
-bash: cho: command not found
good
[root@oldboy oldboy]# echo "nice" || echo "good"
nice
實際中應用:顯示/root/oldboy目錄,如果沒有就創建
[root@oldboy xiaodong]# ls /root/oldboy || mkdir -p /root/oldboy
ls: cannot access /root/oldboy: No such file or directory
[root@oldboy xiaodong]# ls -d /root/oldboy
/root/oldboy
第2章 通配符
2.1 作用:方便我們查找出各種各樣的文件 找出文件名
* 所有 任意
找出/tmp下以oldboy開頭的文件
[root@oldboy xiaodong]# find /tmp -type f -name "oldboy*"
/tmp/oldboy.txt
/tmp/data/oldboyedu/oldboy.txt
找出系統中包含config的行
[root@oldboy oldboy]# find / -type f -name "*config*"
{} 1.生成序列 echo {a..z} echo {1,2,7,9}
[root@oldboy oldboy]# echo {a,c}{a,c}
aa ac ca cc
2.備份
[root@oldboy xiaodong]# ls
xukai.txt
[root@oldboy xiaodong]# echo A{b,c}
Ab Ac
[root@oldboy xiaodong]# echo A{,c}
A Ac
[root@oldboy xiaodong]# cp xukai.txt{,.bat}
[root@oldboy xiaodong]# ls
xukai.txt xukai.txt.bat
小結:(wildcard 通配符)
1. 方便我們查找文件 文件名
2. linux大部分命令都可以使用通配符
3. 常用* {}
第3章 正則表達式
3.1 情景引導:
lidao.×××
cat id.txt
湯 610702199107053598
鄒 371481199403259478
莫 52020319810613433X
韓 460106199111137270
榮 530124197504135438
榮 oldboy
榮 babygirl
榮 530124197504135438
阮 360702197902169951
翁 331002198504132813
任 621223198708245176
姜 370602198507189574
霍 320904198403048179
如何判斷用戶的×××號碼是否正確?
特殊符號幫助我們處理文件====正則表達式
在文件中過濾出你想要的或不想要的內容
3.2 正則表達式分類
3.2.1 基礎正則表達式:basic regular expression BRE
^ $ . * [] [^]
3.2.2 擴展正則表達式 extended regular expression ERE
| + () {} ?
3.3 正則與通配符的區別
通配符: 作用:查找文件名
支持的命令:linux中大部分命令都支持
正則:作用: 在文件中過濾內容
支持的命令: sed awk grep Python java
12.25 -特殊符號,通配符與正則表達式