unix linux 下彙總單一使用者 cpu mem 使用率 等維護資訊
最近專案需要做報表,要記錄單一使用者的cpu和mem使用率,研究了一下awk
[root@app1 ~]# ps aux |head
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 10372 664 ? Ss Jan18 0:15 init [3]
root 2 0.0 0.0 0 0 ? S< Jan18 1:09 [migration/0]
root 3 0.0 0.0 0 0 ? SN Jan18 0:00 [ksoftirqd/0]
root 4 0.0 0.0 0 0 ? S< Jan18 0:00 [watchdog/0]
root 5 0.0 0.0 0 0 ? S< Jan18 0:05 [migration/1]
root 6 0.0 0.0 0 0 ? SN Jan18 7:05 [ksoftirqd/1]
root 7 0.0 0.0 0 0 ? S< Jan18 0:00 [watchdog/1]
root 8 0.0 0.0 0 0 ? S< Jan18 0:04 [migration/2]
root 9 0.0 0.0 0 0 ? SN Jan18 1:54 [ksoftirqd/2]
先確定輸出列
先確定輸出列
ps aux |awk '{if ($1 ~ /^nobody$/) {print $1"\t",$2"\t",$3"\t",$4}}'
顯示
nobody 使用者
[root@app1 ~]# ps aux |awk '{if ($1 ~ /^nobody$/) {print $1"\t",$2"\t",$3"\t",$4}}'
nobody 14625 0.0 0.0
nobody 14626 0.6 0.0
nobody 14627 0.6 0.0
nobody 14881 0.6 0.0
依次代表: USER PID %CPU %MEM 對應$1,$2,$3,$4
然後研究彙總處理,awk忘得差不多了,臨時找資料簡單研究了一下,做了個能實現功能的簡陋品:
ps aux |awk '{if ($1 ~ /^nobody$/) {print $1"\t",$2"\t",$3"\t",$4}}'|awk '{if(!ind[i]){ind[i++]=n;}}{sumi[n]+=$3;}{ if(!lnd[l]){lnd[l++]=m;}}{suml[m]+=$4;}END{for(j=0;j|head -1
中間居然用了3個管道符,2次awk還有個head~真難看~
結果如下:
nobody使用者:
依次代表: USER PID %CPU %MEM 對應$1,$2,$3,$4
然後研究彙總處理,awk忘得差不多了,臨時找資料簡單研究了一下,做了個能實現功能的簡陋品:
ps aux |awk '{if ($1 ~ /^nobody$/) {print $1"\t",$2"\t",$3"\t",$4}}'|awk '{if(!ind[i]){ind[i++]=n;}}{sumi[n]+=$3;}{ if(!lnd[l]){lnd[l++]=m;}}{suml[m]+=$4;}END{for(j=0;j|head -1
中間居然用了3個管道符,2次awk還有個head~真難看~
結果如下:
nobody使用者:
[root@app1 ~]# ps aux |awk '{if ($1 ~ /^nobody$/) {print $1"\t",$2"\t",$3"\t",$4}}'|awk '{if(!ind[i]){ind[i++]=n;}}{sumi[n]+=$3;}{ if(!lnd[l]){lnd[l++]=m;}}{suml[m]+=$4;}END{for(j=0;j
依次代表: USER %CPU %MEM
程式碼雖然臃腫難看,效果還是達到了,專案時間太急,BOSS答應甲方答應的很痛快,我們就得悲催了。。。。
過來這陣再回來優化一下程式碼吧~有路過的朋友來一起討論一下吧~謝謝~
nobody 1.8 0
依次代表: USER %CPU %MEM
root使用者:
root 54.9 10.8依次代表: USER %CPU %MEM
root使用者:
[root@app1 ~]# ps aux |awk '{if ($1 ~ /^root$/) {print $1"\t",$2"\t",$3"\t",$4}}'|awk '{if(!ind[i]){ind[i++]=n;}}{sumi[n]+=$3;}{ if(!lnd[l]){lnd[l++]=m;}}{suml[m]+=$4;}END{for(j=0;j
依次代表: USER %CPU %MEM
程式碼雖然臃腫難看,效果還是達到了,專案時間太急,BOSS答應甲方答應的很痛快,我們就得悲催了。。。。
過來這陣再回來優化一下程式碼吧~有路過的朋友來一起討論一下吧~謝謝~
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14184018/viewspace-729860/,如需轉載,請註明出處,否則將追究法律責任。
請登入後發表評論
登入
全部評論
相關文章
- Linux基本運維彙總Linux運維
- MySQL日誌維護策略彙總MySql
- Linux檢視CPU使用率Linux
- Linux中如何檢視CPU使用率?Linux
- Linux運維常用的20個命令彙總!Linux運維
- 運維人員常用的Linux命令彙總運維Linux
- Linux 運維必備 150 個命令彙總Linux運維
- 維護區間資訊
- 一文秒懂CPU使用率
- PostgreSQL DBA(88) - Linux(CPU使用率 vs 平均負載)SQLLinux負載
- MySQL information_schema庫下的表型別資訊彙總MySqlORM型別
- 運維人員最常用150個Linux命令彙總運維Linux
- SAP PM 入門系列11 - 一個維護通知單隻能建立一個維護訂單?
- 快應用開發教程及資源彙總,長期維護,持續更新中。。。
- Linux使用者資訊查詢命令有哪些?linux運維命令學習Linux運維
- Linux 運維人最常用 150 個命令彙總! 收藏了!Linux運維
- Linux運維寶典:最常用的150個命令彙總Linux運維
- dble運維命令彙總運維
- 超全的企業工商各個維度資訊查詢API彙總API
- 資訊保安等級保護是什麼意思?開展資訊保安等級保護工作有啥意義?
- surging教學視訊資源彙總
- Oracle索引塊分裂split資訊彙總Oracle索引
- 運維人員必須要了解熟知的Linux命令彙總運維Linux
- 遊戲畫面中實時顯示FPS幀數和CPU和顯示卡使用率、溫度等資訊的方法遊戲
- Oracle效能優化-資料庫CPU使用率100%Oracle優化資料庫
- 一文彙總好用的企業工商資訊 API 介面API
- 單細胞資料 儲存方式彙總
- Linux 效能分析工具彙總Linux
- Oracle統計資訊的收集和維護Oracle
- Java程式CPU使用率高排查Java
- CPU使用率低負載高負載
- SAP PM 入門系列12 - IW32 下達一個維護訂單
- Linux老司機帶你學WGCLOUD 磁碟告警是針對磁碟總使用率還是單個磁碟使用率LinuxGCCloud
- Oracle 統計資訊相關命令彙總Oracle
- Win10怎麼看cpu使用率?Win10檢視CPU使用率的方法Win10
- Linux記錄命令執行的使用者IP地址和時間等資訊Linux
- SAP PM 入門系列10 - 根據維護通知單建立維護訂單
- Linux下處理時間同步相關問題彙總Linux
- 運維監控指標彙總運維指標