Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

10 個你可能不知道但超好用的 Linux 指令

編輯:Linux 教學

Linux 指令浩如煙海,除了常用的 ls、cd、grep,還有許多「隱藏神器」能大幅提升效率。本文精選 10 個實用但較少被提及的指令,附上實際操作範例,助你成為命令列高手。

1. pgrep — 快速查詢進程 ID

不用管道串 ps | grep | awk,直接:

$ pgrep -u hchen
22441
22444

等同 ps -ef | egrep '^hchen' | awk '{print $2}',但更快、更乾淨。

2. pstree — 樹狀顯示進程關係

$ pstree
init-+-acpid
     |-httpd---10*[httpd]
     |-sshd---sshd---bash---pstree
     `-mysqld_safe---mysqld---9*[{mysqld}]

一眼看清父子關係、執行緒數量,排查服務異常超方便。

3. bc — 任意精度計算器

支援開根號、三角函數、高精度浮點運算:

$ echo "sqrt(36)" | bc
6
$ echo "scale=4; sqrt(2)" | bc
1.4142

寫成腳本 sqrt 更方便:

#!/bin/bash
echo -e "sqrt($1)\nquit" | bc -q -i

4. split — 大檔案切割

$ ls -lh largefile.tar.gz
417M largefile.tar.gz
$ split -b 50m largefile.tar.gz LF_
$ ls -lh LF_*
50M LF_aa
50M LF_ab
...
17M LF_ai

合併還原:cat LF_* > largefile.tar.gz。

5. nl — 帶行號輸出檔案

$ nl stdio.h | head -10
     1  /* Define ISO C stdio ...
     2  Copyright (C) 1991...
     3  This file is part of the GNU C Library.

比 cat -n 更靈活,支援多種編號格式。

6. mkfifo — 建立具名管道 (FIFO)

$ mkfifo /tmp/mypipe
$ ls -al > /tmp/mypipe &   # 終端 1:寫入(阻塞)
$ head /tmp/mypipe         # 終端 2:讀取(解除阻塞)

適用於進程間通訊、無暫存檔傳遞大量資料。

7. ldd — 查看動態連結庫相依性

$ ldd /usr/bin/java
        linux-gate.so.1 =>  (0x00cd9000)
        libgcj.so.7rh => /usr/lib/libgcj.so.7rh (0x00ed6000)
        libc.so.6 => /lib/i686/nosegneg/libc.so.6 (0x0022f000)
        ...

排查「缺少 .so 檔」、「版本衝突」的利器。

8. col — 移除控制字元,轉純文字

$ man bash | col -b > bash.txt

將 man page 的倒退鍵、底線等控制碼濾除,產生乾淨文字檔。

9. xmlwf — XML 井字號驗證器

$ curl -s 'https://example.com/feed' > feed.xml
$ xmlwf feed.xml          # 無輸出 = 通過
$ perl -pi -e 's//
/g' feed.xml $ xmlwf feed.xml feed.xml:13:23: mismatched tag

快速檢查 XML 結構是否完整。

10. lsof — 列出開啟檔案/連線

$ lsof -i :80
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
httpd   548 apache  4u  IPv6 14300967  0t0  TCP *:http (LISTEN)
httpd   561 apache  4u  IPv6 14300967  0t0  TCP *:http (LISTEN)

常用參數:-i(網路)、-p PID(指定進程)、-u user(指定用戶)。

總結速查表

指令核心用途典型場景
pgrep依條件列出 PID腳本殺進程、監控
pstree樹狀進程圖服務依賴分析
bc高精度計算科學運算、腳本數學
split切割大檔傳輸限制、備份分卷
nl加行號程式碼審閱、日誌對照
mkfifo具名管道IPC、串流處理
ldd共享庫相依部署除錯、缺庫排查
col濾除控制碼man 轉純文字、日誌清洗
xmlwfXML 驗證API 回應驗證、配置檢查
lsof開啟檔案/連線端口佔用、檔案洩漏追蹤
善用 man <command> 深入探索每個指令的進階參數,這 10 倍工具將讓你的 Linux 日常操作事半功倍。
Copyright © Windows教程網 All Rights Reserved