1. 程式人生 > >第二十四課 shell的特殊符號及cut_sort_wc_uniq_tee_tr_split 命令

第二十四課 shell的特殊符號及cut_sort_wc_uniq_tee_tr_split 命令

20180424

一、特殊符號

‘*‘ 通配符,任意個任意字符
‘?‘ 任意一個字符
‘#‘ 註釋字符
‘\‘ 脫義字符
‘|‘ 管道
‘$‘ 變量的前綴
‘!$‘ 組合,正則裏面表示結尾
‘;‘ 多條命令寫到一條,用分號分割
‘?‘ 用戶的家目錄,後面正則表達式表示匹配符
‘&‘ 放到命令後面,會把命令丟到後臺
‘>‘ 正確重定向
‘>>‘ 追加重定向
‘2>‘ 錯誤重定向
‘2>>‘ 錯誤追重定向
‘&>‘ 把錯誤跟正確的重定向同一個文件裏
‘[ ]‘ 指定字符中的一個,[0-9] [a-z]
‘||‘ 在shell 當中就是或者的意思。如果第一條命令執行成功,後面的命令就不再執行

‘&&‘ 如果前面的命令執行成功,才會執行後面的命令

二、幾個和管道符有關的命令

cut 命令:截取字符串,

例: cat /etc/passwd |head -2 |cut -d ":" -f 1,2(1-10)
-d 指定分隔符:
-f 第幾段
-c 指定第幾個字符 例: cat /etc/passwd |head -2 |cat -c 4

sort 命令: 排序

例:sort -nr filename
-n 以數字排列,字母會認為是0
-r 反序排序
-t 分隔符

wc -l 命令 :統計行數

wc -m 命令:統計字符數
wc -w 統計詞
(cat -A filename 可以查看文本的包括隱藏的所有字符)

uniq 去重復命令:

(sort 命令跟uniq命令要搭配用,才方便)
-c 統計重復次數

tee 重定向的同時還在屏幕上顯示

和> 類似,
例: sort 1.txt |uniq -c |tee a.txt

tr 替換字符

tr ‘a‘‘b‘,大小寫替換:tr ‘[a-z]‘ ‘[A-Z]‘
例:把一個字符串小寫換成大寫
echo "haohaoxuexi" |tr ‘[ha]‘ ‘[HA]‘

split 切割

-b 大小(默認單位),例: split -b 100M filename 自定義前綴名
-l 行數 例: split -l 1000 filename

第二十四課 shell的特殊符號及cut_sort_wc_uniq_tee_tr_split 命令