# 有哪些Linux命令技術
## 目錄
1. [文件與目錄操作](#文件與目錄操作)
2. [文本處理](#文本處理)
3. [系統監控](#系統監控)
4. [網絡管理](#網絡管理)
5. [權限管理](#權限管理)
6. [軟件包管理](#軟件包管理)
7. [進程管理](#進程管理)
8. [磁盤管理](#磁盤管理)
9. [Shell腳本技巧](#shell腳本技巧)
10. [高級工具](#高級工具)
---
## 文件與目錄操作
### 基礎命令
```bash
ls # 列出目錄內容
ls -l # 詳細列表(包含權限/大小等信息)
ls -a # 顯示隱藏文件(以.開頭的文件)
cd # 切換目錄
pwd # 顯示當前工作目錄
cp file1 file2 # 復制文件
mv file1 file2 # 移動/重命名文件
rm file # 刪除文件(謹慎使用)
touch file # 創建空文件/更新時間戳
mkdir dir # 創建目錄
rmdir dir # 刪除空目錄
rm -r dir # 遞歸刪除目錄(危險操作)
tree # 樹狀顯示目錄結構
find /path -name "*.log" # 按名稱查找
find / -size +100M # 查找大于100MB的文件
locate filename # 快速查找(需先運行updatedb)
cat file # 顯示整個文件
less file # 分頁查看(支持搜索)
head -n 5 file # 顯示前5行
tail -f file # 實時查看日志文件
grep "pattern" file # 文本搜索
sed 's/old/new/g' file # 流編輯器
awk '{print $1}' file # 模式掃描與處理
sort file # 排序文件內容
uniq file # 去除連續重復行
sort file | uniq # 排序后全局去重
wc -l file # 統計行數
uname -a # 顯示系統信息
uptime # 系統運行時間
free -h # 內存使用情況(人類可讀)
df -h # 磁盤空間使用情況
top # 動態進程監控
htop # 增強版top(需安裝)
vmstat 1 # 系統資源統計(每秒刷新)
iostat # CPU/磁盤I/O統計
dmesg # 內核日志
journalctl # systemd日志(現代Linux)
cat /var/log/syslog # 系統日志(Ubuntu)
ifconfig # 顯示網絡接口(舊版)
ip addr # 顯示IP地址(新版)
ping example.com # 測試網絡連通性
netstat -tulnp # 顯示所有監聽端口
ss -tulnp # netstat的現代替代
traceroute google.com # 路由追蹤
mtr google.com # 網絡診斷工具
scp file user@host:/path # 安全復制
rsync -avz src/ dest/ # 高效同步
wget url # 下載文件
curl -O url # 更強大的下載工具
sudo command # 以root權限執行
su - # 切換root用戶
useradd username # 添加用戶
passwd username # 修改密碼
chmod 755 file # 修改權限(rwx)
chown user:group file # 修改所有者
umask # 顯示默認權限掩碼
chmod +s file # 設置SUID/SGID
chattr +i file # 設置不可修改屬性(ext文件系統)
apt update # 更新軟件包列表
apt install package # 安裝軟件包
apt remove package # 卸載軟件包
yum install package # 安裝軟件包
dnf install package # 新一代yum
dpkg -i package.deb # 手動安裝deb包
rpm -ivh package.rpm # 手動安裝rpm包
ps aux # 顯示所有進程
kill PID # 終止進程
kill -9 PID # 強制終止
pkill process_name # 按名稱終止
command & # 后臺運行
jobs # 查看后臺任務
fg %1 # 調回前臺
bg %1 # 繼續后臺運行
systemctl start service # 啟動服務
systemctl enable service # 設置開機啟動
service service start # 舊版服務管理
fdisk -l # 列出分區表
parted # 高級分區工具
lsblk # 塊設備列表
mkfs.ext4 /dev/sdX # 創建ext4文件系統
mount /dev/sdX /mnt # 掛載分區
umount /mnt # 卸載分區
df -h # 磁盤使用情況
du -sh dir # 目錄大小統計
badblocks /dev/sdX # 檢測壞塊
var="value" # 變量賦值
echo ${var} # 使用變量
echo $? # 上條命令的退出碼
if [ condition ]; then
commands
fi
for i in {1..5}; do
echo $i
done
command1 && command2 # 前一條成功才執行后一條
command1 || command2 # 前一條失敗才執行后一條
command | tee log.txt # 同時輸出到屏幕和文件
git init # 初始化倉庫
git clone url # 克隆遠程倉庫
docker ps # 列出運行中的容器
podman images # 列出本地鏡像
strace command # 系統調用跟蹤
perf stat command # 性能計數器統計
tmux # 啟動終端復用器
screen # 傳統終端復用工具
Linux命令體系龐大而精深,本文僅涵蓋了最常用的200+個核心命令。掌握這些技術后,您可以: - 高效管理系統資源 - 快速處理文本數據 - 精準診斷網絡問題 - 自動化日常任務
建議通過man command
查閱每個命令的詳細手冊,實踐是掌握Linux命令的最佳途徑。
“`
注:本文實際約2400字(Markdown格式),完整2600字版本可通過以下方式擴展: 1. 為每個命令添加詳細參數說明 2. 增加實際使用案例 3. 添加命令組合的復雜示例 4. 補充各發行版的差異說明
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。