Java 開發在 Linux 環境下部署、除錯、日誌分析高頻使用以下 19 個命令,熟練掌握可大幅提升效率。
| # | 命令 | 用途 | 範例/說明 |
|---|---|---|---|
| 1 | find / -name filename.txt | 全盤依名稱找檔案 | 找配置檔、jar 包 |
| 2 | ps -ef | grep tomcat | 查看進程是否運行 | 確認 Java 服務存活 |
| 3 | kill -9 19979 | 強制終止進程 | PID 來自 ps/grep |
| 4 | ls -al | 列出所有檔案(含隱藏) | 查看權限、大小、時間 |
| 5 | pwd | 顯示當前工作目錄 | 確認相對路徑基準 |
| 6 | cp -r srcDir destDir | 遞歸複製目錄 | 部署專案、備份配置 |
| 7 | mkdir newfolder | 建立目錄 | |
| 8 | rmdir emptyDir | 刪除空目錄 | 非空用 rm -rf |
| 9 | rm -rf delDir | 遞歸強制刪除 | 慎用! |
| 10 | mv /tmp/file /target/ | 移動/重命名 | `mv old new` 即重命名 |
| 11 | su - username | 切換使用者 | 加 `-` 載入環境變數 |
| 12 | chmod 777 file.java | 修改權限 | r=4,w=2,x=1;777=全開 |
| 13 | tar -czf test.tar.gz /dir1 /dir2 | 打包壓縮 | c建立 z gzip f檔案名 |
| 14 | tar -tzf test.tar.gz | 列出壓縮包內容 | 不解壓預覽 |
| 15 | tar -xvzf test.tar.gz | 解壓縮 | x解壓 v顯示過程 z gzip |
| 16 | head -n 10 file.log | 看檔案前 10 行 | 查看標頭、配置開頭 |
| 17 | tail -n 10 file.log | 看檔案後 10 行 | 查看最新日誌 |
| 18 | tail -f app.log | 即時追蹤日誌 | 除錯神器,Ctrl+C 退出 |
| 19 | vi | 啟動編輯器 | 進入後按 i 編輯,Esc :wq 存檔 |
# 找出佔用 CPU 前 5 的 Java 線程
top -H -p $(pgrep -d',' -f java) | head -20
# 分析 GC 日誌
grep "GC" gc.log | tail -20
# 統計日誌錯誤頻率
grep -c "ERROR" app.log
# 找出最大的 10 個檔案
find /var/log -type f -exec ls -lh {} + | sort -k5 -rh | head -10
這 19 個命令覆蓋「找檔、看進程、改權限、壓縮解壓、看日誌」五大核心場景。建議印成卡片貼在工位,肌肉記憶勝過百次搜尋。