cut 字段提取(提取列)
格式:cut
選項:-f 列號:提取第幾列
-d 分隔符:指定分隔符去分隔列
例:
cut -f 2,3 student.txt提取student.txt的第2、3列
cat /etc/passwd | grep /bin/bash |grep -v root| cut -d 「:」 -f 1cut的弊端:沒辦法處理不同空格數分隔的列,要用到awk提取passwd中的普通使用者的名字
akw 擷取列
格式:awk 』條件1條件2…『 檔名
例:
df -h |awk 『』sed輸入df -h的第1列第3列
輕量級流編輯器,sed主要用來對資料進行選取、替換、刪除、新增。
格式:sed [選項] 』[動作]『 檔名
選項:-n:把經過sed命令處理的行輸出到螢幕
-e:允許對輸入資料應用多條sed命令編輯
-i:用sed的修改結果直接修改讀取資料的檔案,而不只是在螢幕輸出
動作:a\:追加,在當前行後新增一行或多行。新增多行時,除最後一行外,每行末尾用「\」代表資料未完結
c\:行替換,用c候面的字串替換原資料行,替換多行時,除最後一行外,每行末尾用「\」代表資料未完結
i\:插入,插入多行時,除最後一行外,每行末尾用「\」代表資料未完結
d\:刪除
p:列印
s:字串替換 格式為「行範圍s/舊字串/新字串/g」
例:
sed -n 「2p」 /etc/passwd只輸出passwd的第二行
sed 「2,4d」 /etc/passwdprintf刪除passwd的2到4行,但是不對passwd做修改,只是將刪除之後的內容輸出到螢幕
格式:print 『輸出型別輸出格式』 輸出內容
輸出型別:
%ns:輸出字串,n是數字指輸出n個字元
%ni:輸出整數,n是數字指輸出n個數字
%m.nf:輸出浮點數。m指整數字數,n為小數字數。如%8.2f代表共輸出8位數,其中2位小數字,6位整數字。
輸出格式:
\a: 警告音
\b:退格
\f:清除螢幕
\n:換行
\r:回車
\t:水平輸出退格鍵,即tab。
sort 排序
格式:sort [選項] 檔名
-f:忽略大小寫
-n:以數值型進行排序,預設使用字串型排序(即10<2)
-r:反向排序
-t:指定分隔符,預設分隔符為製表符\t
-k n[,m]:按照指定的字段範圍排序,從第n欄位開始,m欄位結束(預設行尾)
例:
sort -t 「:」 -k 3,3 /etc/passwd指定分隔符:,用第三個字段排序。
wc 統計
格式:wc [選項] 檔名
選項:-l:統計行數
-w:統計單詞數
-m:統計字元數
Shell 字元處理命令
shell 字元處理命令 排序命令sort root hh sort 選項 檔名 選項 f 忽略大小寫 n 以數值型進行排序,預設使用字串型排序 r 反向排序 t 指定分隔符,預設是製表符 k n,m 按照指定的字段範圍排序。從第n欄位開始,m欄位結束 預設到結尾 例子 sort t k 3,3 e...
shell字串處理
一 構造字串 直接構造 str zero hello str first i am a string str second success 重複多次 repeat the first parm 1 by 2 times strrepeat 舉例 str repeat strrepeat user n...
shell 字串處理
一 號擷取,刪除左邊字元,保留右邊字元。echo 其中 var 是變數名,號是運算子,表示從左邊開始刪除第乙個 號及左邊的所有字元 即刪除 http 結果是 www.google.com test.htm 二 號擷取,刪除左邊字元,保留右邊字元。echo 表示從左邊開始刪除最後 最右邊 乙個 號及左...