Linux與命令列基礎

想讓之後附加到伺服器日誌檔 /var/log/app.log 的行,在每次附加時持續顯示在畫面上。適當的指令是下列何者?

  1. Atail -f /var/log/app.log
  2. Bhead -n 10 /var/log/app.log
  3. Ccat /var/log/app.log
查看答案與解析

正確答案:A. tail -f /var/log/app.log

tail 是顯示檔案末尾幾行(預設10行)的指令,加上 -f(follow)後,顯示完也不會結束,而是持續監看檔案,每當有附加的行就顯示出來。常用於透過日誌追蹤模擬或工作的進度,要停止時按 Ctrl+C。若日誌會因輪替而改成別的名稱,持續追蹤同名新檔案的 tail -F 很方便。head 顯示開頭的行,cat 顯示整個檔案,兩者都只顯示一次就結束。

  • A. 正確。加上 -f 會持續顯示附加的行。
  • B. head -n 10 只顯示一次開頭的10行,不會顯示附加的內容。
  • C. cat 只顯示一次當下的內容就結束,不會顯示之後附加的內容。
練習這個領域 前往領域頁面

Linux與命令列基礎的其他題目

  1. 上面這個從逗號分隔的行取出欄位的指令,其輸出是下列何者?
  2. 上面這個取代字元的 sed 指令,其輸出是下列何者?
  3. 在上面的操作中,最後的 awk 輸出的內容是下列何者?
  4. 以 GNU 的 find 執行 find /data -name "*.log" -mtime +7 -size +100M 時,找到的檔案是下列何者?
  5. 停止沒有回應的行程時,一般建議先用「kill 行程ID」,仍未結束時才用「kill -9 行程ID」。理由是下列何者?