Bo2SS

Bo2SS

6. 獲取系統資訊

課程內容#

uptime 系統運行時長和平均負載#

  • 圖片
  • 用來監測系統開機多久了、有幾個用戶登陸著、運行狀態 (負載)

  • 學會用 --help 查看命令幫助

  • 圖片

w 用戶列表及運行的任務#

  • 圖片
  • 圖片
  • 當系統很卡時,可以看看當前進程正在執行的命令

who 顯示當前登錄用戶信息#

  • 圖片
  • 有點像精簡的 w

  • 當 --help 信息過多時,學會使用 tldr

  • -q 查看所有登陸用戶及數量

  • -H 顯示頭

whoami、who am i 當前有效 / 真實的用戶名#

  • 圖片
  • sudo -i 用超級用戶權限啟動默認 Shell

  • who i am = who am i

  • who am i 其實屬於 who 命令,am i 是參數

  • 圖片

last 用戶最近登錄信息#

應用:查出最近登錄最頻繁的三個用戶

  • 圖片
  • 清洗空行【"^$"】、按空格切割再取第 1 列、按字典序 [即 ASCII 碼序] 排序、計數、按數字排倒序

  • cut -c 10-15:按字符切,取某一列對應第 10-15 個字符

【延伸】詞頻統計(a.log 為 man 手冊的 ls、man、stdio、scanf 內容)

  • 圖片
  • tr 字符替換命令

    • -c 反向替換
    • -s 壓縮連續的重複字符

uname 系統信息#

  • uname -a 很完整的系統信息 [機器一上手先用這條命令]

date 顯示或設置系統時間與日期#

  • 圖片
  • 可以自定義字符串格式,注意大小寫自行嘗試即可

  • [PS] NTP—— 網絡時間協議,通過時區同步時間

    • 圖片
    • 來自維基百科,分佈式結構類似 DNS,但它是單向聯繫的
    • 應用:銀行系統、網購
    • 時間服務器配置見 /etc/ntp.conf
    • 時區可查看 /usr/share/zoneinfo
      • 圖片
      • 修改時區可通過 ln -sf [軟連接強制覆蓋] 命令,將 /etc/localtime 連接到時區
      • 举例:sudo ln -sf /usr/share/zoneinfo/Asia/ 城市 /etc/localtime

附加知識點#

  • cal 顯示日曆
  • echo -e 可以讓反斜杠 \ 生效
    • 如 echo -e "\033 [32m123\033 [0m456" 輸出顏色,這類似 printf
  • $[] 只做整數計算

思考點#

Tips#

  • 縮寫可能代表
    • -h:help、human、header(w -h)
    • -p:pretty
  • shell 腳本裡空格是敏感的
  • 在 Shell 裡定義的變量是在進程裡的,退出 Shell [或斷開 SSH 連接] 變量就消失了
  • wget 可以下載文檔數據

課程速記#

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。