awk
提取本機網絡卡流量
根分割槽的剩餘容量
語法結構:
awk 選項 『[條件]』 檔案
//如果要編輯多條指令,用;分割
#cat test.txt
hello the world
welcome to china
指令:print
//awk 過濾檔案第二列
#awk 『』 test.txt
//輸出磁碟的剩餘空間
#df -h | awk 『』
注意:若未指定分隔符,預設將空格 製表符作為分隔符
不光可以列印變數,還可以列印常量
/etc/passwd 中以:為分隔符
選項:-f:可以指定分隔符
//輸出/etc/passwd 中以:為分隔符的第一列和第七列
#awk -f:』[print $1,$7]』 /etc/passwd
root /bin/bash
bin /sbin/nologin
awk內建變數:
$1:文字第一列
$2:文字第二列
以此類推
nr 檔案當前的行號
nf 檔案當前的行的列數
提取網絡卡流量:
#ipconfig
px packets … //接收資料量
tx packets … //傳送資料量
#ifconfig eth0 | awk 『/tx p/』
2439674050
#df -h / | awk 『///』
44g#df -h / tail -1 | awk 『』
44g#awk 『/failed/』 /var/log/secure
awk格式化輸出:
語法結構:
awk 選項 『begin end』 檔案
begin :行前處理,讀取檔案內容前執行,指令只執行一次
: 逐行處理 執行n次
end :行後處理,指令只執行1次
案例:統計系統中使用bash作為登入shell的使用者總個數
思路:1.預處理,賦值變數x=0
2.逐行處理/etc/passwd檔案,如果發現最後一列是/bin/bash時,x+1
3.當你全部處理完畢之後。輸出x值即可
#awk 『begin /bash$/ end 』 /etc/passwd
#awk -f:『begin
end』 /etc/passwd
user uid home
root 0 /root
shell指令碼11彈
shell指令碼程式設計 變數補充 if條件判斷 變數的型別 字串 數值 布林型別 true false null shell中指定變數的型別 declare declesar 內建命令 用來宣告和修改變數的屬性 唯讀 readonly r 設定為唯讀變數 declare r a 10 r 不能修改...
shell指令碼十二彈
1.使用正則處理條件 輸出以bash結尾的完整記錄 輸出整行 awk f bash etc passwd 輸出包含root的行 awk f root etc passwd print可以不寫 輸出root或者he賬號的使用者名稱和uid資訊 awk f root tom 輸出賬戶的名稱包含root的...
shell 指令碼第五彈
1.shell指令碼程式設計 1.指令碼是 c語言 程式設計 shell 指令碼 只作用於linux作業系統 以間隔多行命令 2.功能 批量處理檔案 自動去做某些功能 date,who,ls 處理日誌資訊 備份 刪除原日誌 上傳備份檔案 週期性計畫任務 3.學習方法 linux的命令 lamp we...