1. 程式人生 > >Linux Shell Scripting Cookbook 讀書筆記 7

Linux Shell Scripting Cookbook 讀書筆記 7

常用 用戶 The 判斷網絡 退出 去除 執行文件 占用率 系統信息

ping, du, ps, kill, 收集系統信息

判斷網絡中哪些主機是活動主機

#!/bin/bash
for ip in 10.215.70.{1..255};
do
  (
  ping $ip -c2 &> /dev/null ;
  if [ $? -eq 0 ];
  then
    echo $ip is alive
  fi
  )&  # ()中為子shell,後面的&表示後臺執行
done

wait #等待所有進程執行完才退出

du -a dir

遞歸地輸出指定目錄或多個目錄中所有文件的統計結果

技術分享圖片

-s表示只顯示總計

技術分享圖片

找出大小為前十的文件

技術分享圖片

ps只顯示你要的列

技術分享圖片

-o的參數用逗號相隔,且不能有空格

pcpu cpu占用率; pid 進程id;ppid 父進程id; pmem內存使用率; comm可執行文件名; cmd 簡單命令; cuid有效的用戶id

user 啟動進程的用戶; nice 優先級; time累計的cpu時間; etime進程啟動後度過的時間; tty所關聯的tty設備;stat 進程狀態

--sort可以對特定的列排序,-表示降序,+表示升序

找到指定命令 的pid,加了pid=之後,會去除頭部且只拿pid列

技術分享圖片

ps輸出線程最多的10個進程

技術分享圖片

NLWP表示每個進程的線程數量,LWP是線程id

kill -l顯示信號數和信號名稱

技術分享圖片

常用的為SIGHUP 1 掛起檢測; SIGINT 2 按下CTRL + C發送該信號; SIGKILL 9 強制殺死進程

SIGTERM 15 終止進程; SIGTSTP 20 按下CTRL + Z發送該信號

強行殺死進程 kill -s SIGKILL PROCESS_ID或者 kill -9 PROCESS_ID

killall -9 gedit 用於強行殺死進程

killall -9 -u sryan gedit

whatis 可以簡短地了解一個命令

技術分享圖片

收集系統信息

技術分享圖片

技術分享圖片

CPU相關

技術分享圖片

內存

技術分享圖片

用/proc收集信息

/proc是一個位於內存中的偽文件系統,提供了從用戶空間讀取參數的接口

技術分享圖片

Linux Shell Scripting Cookbook 讀書筆記 7