Linux 是一個功能強大的操作系統(tǒng),其命令行工具為用戶提供了無限的可能性。除了廣為人知的命令如 ls、cd 和 grep,Linux 中還隱藏著許多鮮為人知但極其實用的命令。這些工具往往功能強大,能夠顯著提高工作效率、解決復雜問題或優(yōu)化工作流程。無論你是 Linux 新手還是資深用戶,這些命令都值得你加入工具箱。 1. ncnc(Netcat)是一個多功能的網(wǎng)絡工具,因其靈活性和廣泛的應用場景而被稱為“網(wǎng)絡瑞士軍刀”。它可以用來創(chuàng)建 TCP/UDP 連接、監(jiān)聽端口、傳輸數(shù)據(jù)甚至進行簡單的網(wǎng)絡調(diào)試。盡管它的功能看似簡單,但其用途卻異常強大。 主要功能
使用示例
nc -l 1234
這會在本地 1234 端口監(jiān)聽,等待其他主機連接。
連接到 IP 為 192.168.1.100 的主機的 1234 端口。
發(fā)送端: nc -l 1234 < file.txt
接收端:
將 file.txt 從發(fā)送端傳輸?shù)浇邮斩恕?/p>
一端監(jiān)聽: nc -l 1234
另一端連接:
雙方輸入內(nèi)容即可實時聊天。 進階用法
nc -u -l 1234
使用 -u 啟用 UDP 協(xié)議。
掃描 20 到 80 端口,-z 表示僅掃描不發(fā)送數(shù)據(jù),-v 顯示詳細信息。 實際應用場景
2. lsoflsof(List Open Files)是一個強大的工具,用于列出系統(tǒng)中所有打開的文件。在 Linux 中,“文件”不僅包括磁盤上的文件,還涵蓋網(wǎng)絡套接字、管道和設備。lsof 能幫助用戶深入了解系統(tǒng)資源的使用情況。 主要功能
使用示例
lsof
輸出包括進程 ID、用戶、文件描述符等。
顯示 PID 為 1234 的進程打開的文件。
lsof /var/log/syslog
查看哪些進程在使用 /var/log/syslog。
顯示所有網(wǎng)絡連接,包括 TCP 和 UDP。 進階用法
lsof -i :80
查看占用 80 端口的進程。
只顯示 root 用戶打開的文件。 實際應用場景
3. stracestrace 是一個用于跟蹤程序系統(tǒng)調(diào)用的工具。它能記錄程序運行時與操作系統(tǒng)交互的細節(jié),包括系統(tǒng)調(diào)用的參數(shù)、返回值和信號傳遞,是調(diào)試和性能分析的得力助手。 主要功能
使用示例
strace ls
顯示 ls 命令的系統(tǒng)調(diào)用。
跟蹤 PID 為 1234 的進程。
strace -c ls
輸出系統(tǒng)調(diào)用的時間統(tǒng)計。 進階用法
將跟蹤結(jié)果保存到 trace.log。
strace -e open ls
只跟蹤 open 系統(tǒng)調(diào)用。 實際應用場景
4. htophtop 是 top 命令的增強版,提供直觀的界面和豐富的交互功能。它以彩色顯示進程信息,支持鼠標操作,是監(jiān)控和管理進程的理想工具。 主要功能
使用示例
進入交互界面。
按 F3,輸入進程名。
選擇進程,按 F9,選擇信號。 進階用法
按 F2 進入設置,調(diào)整列和顏色。
按 F4,輸入過濾條件。 實際應用場景
5. tmuxtmux 是一個終端復用器,允許用戶在單一終端中運行多個會話。它支持會話分離和重新連接,非常適合遠程工作和多任務處理。 主要功能
使用示例
tmux new -s mysession
Ctrl-b d
進階用法
Ctrl-b c
Ctrl-b %(水平)或 Ctrl-b '(垂直)。 實際應用場景
6. rsyncrsync 是一個強大的文件同步工具,支持本地和遠程同步。它采用增量傳輸技術,只同步變更部分,效率極高。 主要功能
使用示例
rsync -av /source /dest
進階用法
rsync -av --exclude='*.log' /source /dest
實際應用場景
7. fzffzf 是一個命令行模糊查找工具,支持快速搜索文件、歷史記錄等。它通過模糊匹配提升查找效率。 apt install fzf
主要功能
使用示例
![]()
history | fzf
進階用法
fzf --preview 'cat {}'
實際應用場景
8. jqjq 是一個輕量級 JSON 處理工具,支持解析、過濾和轉(zhuǎn)換 JSON 數(shù)據(jù)。它在命令行中處理 JSON 的能力無與倫比。
![]() 主要功能
使用示例
echo '{'name':'John'}' | jq .
![]()
![]() 進階用法
echo '[{'age':30},{'age':25}]' | jq '.[] | select(.age > 28)'
![]()
實際應用場景
9. fdfd 是一個快速、用戶友好的文件查找工具,是 find 的現(xiàn)代化替代品。它速度快、語法簡單,支持顏色輸出。 主要功能
使用示例
fd pattern
進階用法
fd pattern -x echo {}
實際應用場景
10. batbat 是 cat 的增強版,支持語法高亮、行號顯示和 Git 集成。它讓文件內(nèi)容的查看更加直觀。 主要功能
使用示例
bat file.txt
進階用法
bat --language py script.py
實際應用場景
|
|
來自: 江海博覽 > 《網(wǎng)絡》