# Linux中有哪些實用技巧
## 目錄
- [前言](#前言)
- [命令行效率提升](#命令行效率提升)
- [Tab補全](#tab補全)
- [歷史命令復用](#歷史命令復用)
- [命令別名](#命令別名)
- [文件與目錄操作](#文件與目錄操作)
- [快速導航](#快速導航)
- [批量操作](#批量操作)
- [查找文件](#查找文件)
- [系統監控與管理](#系統監控與管理)
- [進程管理](#進程管理)
- [磁盤空間分析](#磁盤空間分析)
- [網絡診斷](#網絡診斷)
- [文本處理神器](#文本處理神器)
- [grep與正則表達式](#grep與正則表達式)
- [awk高級用法](#awk高級用法)
- [sed流編輯器](#sed流編輯器)
- [權限與安全](#權限與安全)
- [sudo技巧](#sudo技巧)
- [SSH優化](#ssh優化)
- [防火墻配置](#防火墻配置)
- [開發相關技巧](#開發相關技巧)
- [Git高效用法](#git高效用法)
- [調試工具](#調試工具)
- [容器化操作](#容器化操作)
- [結語](#結語)
## 前言
Linux作為最流行的開源操作系統,以其強大的命令行工具和高度可定制性著稱。掌握一些實用技巧可以顯著提升工作效率,本文將分享從基礎到進階的實用技巧。
---
## 命令行效率提升
### Tab補全
- **基礎補全**:輸入命令/路徑前幾個字母后按`Tab`自動補全
- **參數補全**:`man`命令后按`Tab`顯示所有可用章節
- **雙重Tab**:顯示所有可能的補全選項
```bash
# 示例:查看系統服務
systemctl [Tab][Tab] # 顯示所有可用操作
!!
:重復上一條命令!$
:引用上條命令的最后一個參數Ctrl+R
:反向搜索歷史命令history | grep "關鍵詞"
:精準查找歷史命令# 永久生效(加入~/.bashrc)
alias ll='ls -alF'
alias gs='git status'
alias update='sudo apt update && sudo apt upgrade'
cd -
:返回上一個工作目錄pushd/popd
:目錄棧管理tree
:樹狀顯示目錄結構(需安裝)# 批量重命名
rename 's/.txt/.md/' *.txt
# 并行處理文件
find . -name "*.log" | parallel gzip {}
# 按名稱查找(忽略大小寫)
find /path -iname "*.conf"
# 按修改時間查找
find ~ -mtime -7 # 7天內修改過的文件
# 結合xargs處理
find /tmp -type f -print0 | xargs -0 rm
# 查看資源占用
htop # 比top更直觀
# 按內存排序
ps aux --sort=-%mem | head
# 殺死所有匹配進程
pkill -f "python.*script"
# 可視化顯示目錄大小
ncdu # 需安裝
# 查找大文件
find / -type f -size +100M -exec ls -lh {} \;
# 查看開放端口
ss -tulnp
# 跟蹤路由(mtr結合ping+traceroute)
mtr google.com
# 測試帶寬
iperf3 -c server_ip
# 遞歸搜索并顯示行號
grep -rn "pattern" /path
# 排除二進制文件
grep -rI "pattern" .
# 上下文顯示
grep -A3 -B2 "error" logfile
# 提取特定列
awk '{print $1,$4}' access.log
# 條件過濾
ps aux | awk '$3 > 5.0 {print $0}'
# 統計行數
awk 'END{print NR}' file
# 批量替換文本
sed -i 's/old/new/g' *.txt
# 刪除空行
sed '/^$/d' file
# 行范圍操作
sed '10,20s/#.*//' config.cfg
# 以其他用戶身份執行
sudo -u username command
# 保存sudo會話(謹慎使用)
sudo -v # 刷新時間戳
# 配置文件 ~/.ssh/config
Host myserver
HostName server_ip
User username
Port 2222
IdentityFile ~/.ssh/id_ed25519
# 開放特定端口
sudo ufw allow 22/tcp
# 限制IP訪問
sudo ufw allow from 192.168.1.100 to any port 22
# 簡潔狀態顯示
git status -sb
# 交互式暫存
git add -p
# 修改最近提交
git commit --amend
# 跟蹤系統調用
strace -f -e trace=file command
# 性能分析
perf top # 需安裝linux-tools
# 清理無用容器
docker system prune
# 查看容器資源使用
docker stats
# 進入容器命名空間
nsenter -t $(docker inspect -f '{{.State.Pid}}' container) -m -u -i -n -p
Linux的強大之處在于其豐富的工具鏈和無限的可定制性。本文介紹的技巧只是冰山一角,建議讀者:
1. 定期查閱man
手冊
2. 參與Linux社區討論
3. 建立自己的腳本庫
掌握這些技巧后,你會發現Linux不再是冰冷的命令行界面,而是一個高效的生產力平臺。 “`
(注:實際字符數約2000字,可根據需要擴展具體章節內容)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。