一、命令格式與輔助工具
類別 | 符號/命令 | 示例 | 說明 | |
---|---|---|---|---|
基本格式 | command | ls -a /home | 命令 + 選項 + 參數 | |
管道符 | ` | ` | `ls -l | less` |
重定向 | > | df -h > disk_usage.txt | 覆蓋寫入文件 | |
>> | echo "New" >> notes.txt | 追加寫入文件 | ||
2> | ls non_exist 2> error.txt | 錯誤輸出重定向 | ||
快捷鍵 | Ctrl+L | - | 清屏 | |
Tab | - | 命令/文件名補全 | ||
\ | long\ command | 命令換行符 | ||
Ctrl+U | - | 刪除光標前內容 | ||
Ctrl+K | - | 刪除光標后內容 | ||
Ctrl+C | - | 終止當前命令 |
二、文件目錄操作命令
命令 | 選項 | 示例 | 說明 |
---|---|---|---|
pwd | - | pwd | 顯示當前工作目錄 |
cd | ~ | cd ~ | 返回家目錄 |
.. | cd .. | 返回上級目錄 | |
- | cd - | 返回上次目錄 | |
ls | -a | ls -a | 顯示所有文件(含隱藏) |
-l | ls -l | 長格式顯示詳細信息 | |
-h | ls -lh | 人性化顯示文件大小 | |
-t | ls -lt | 按時間排序(新→舊) | |
-R | ls -R | 遞歸顯示子目錄 | |
du | -h | du -h | 人性化顯示空間占用 |
-s | du -sh /home | 顯示總占用大小 | |
mkdir | -p | mkdir -p a/b/c | 遞歸創建多層目錄 |
touch | - | touch file{1..3}.txt | 創建空文件 |
ln | - | ln source hardlink | 創建硬鏈接 |
-s | ln -s source softlink | 創建軟鏈接 | |
cp | -r | cp -r dir1 dir2 | 遞歸復制目錄 |
-i | cp -i file1 file2 | 覆蓋前確認 | |
rm | -r | rm -r dir | 遞歸刪除目錄 |
-f | rm -f file | 強制刪除 | |
mv | - | mv old.txt new.txt | 移動/重命名文件 |
find | -name | find / -name "*.log" | 按文件名查找 |
-size | find / -size +10M | 按大小查找 | |
-exec | find . -name "*.tmp" -exec rm {} \; | 查找后執行命令 | |
mount | - | mount /dev/sdb1 /mnt | 掛載設備到目錄 |
三、文件內容處理命令
命令 | 選項 | 示例 | 說明 |
---|---|---|---|
cat | - | cat file.txt | 顯示整個文件 |
more | - | more long_file.log | 分頁查看(僅向下) |
less | - | less large_file.log | 分頁查看(可上下翻頁) |
head | -n | head -n 5 file.txt | 顯示前N行 |
tail | -n | tail -n 5 file.txt | 顯示后N行 |
-f | tail -f app.log | 實時追蹤文件變化 | |
grep | -i | grep -i "error" log.txt | 搜索文本(忽略大小寫) |
-v | grep -v "debug" log.txt | 反向搜索(排除匹配項) | |
^ | grep "^2023" log.txt | 匹配行首內容 | |
wc | -l | wc -l data.csv | 統計行數 |
-w | wc -w text.txt | 統計單詞數 |
四、壓縮解壓命令
命令 | 選項 | 示例 | 說明 |
---|---|---|---|
gzip | - | gzip file.log | 壓縮文件(生成.gz) |
-d | gzip -d file.gz | 解壓.gz文件 | |
bzip2 | - | bzip2 large_file | 壓縮文件(生成.bz2) |
-d | bzip2 -d file.bz2 | 解壓.bz2文件 | |
tar | -czvf | tar -czvf backup.tar.gz dir/ | 創建gzip壓縮包 |
-xzvf | tar -xzvf backup.tar.gz | 解壓gzip壓縮包 | |
-cjvf | tar -cjvf backup.tar.bz2 dir/ | 創建bzip2壓縮包 | |
-xjvf | tar -xjvf backup.tar.bz2 -C /tmp | 解壓到指定目錄 |
五、系統管理命令
命令 | 選項 | 示例 | 說明 |
---|---|---|---|
date | -s | date -s "2023-01-01 12:00" | 設置系統時間 |
hwclock | -w | hwclock -w | 系統時間同步到硬件 |
history | - | history | 查看命令歷史 |
! | - | !996 | 執行歷史編號命令 |
alias | - | alias ll='ls -alh' | 創建命令別名 |
unalias | - | unalias ll | 刪除別名 |
六、組合命令示例
功能 | 命令示例 | 說明 |
---|---|---|
分頁查看目錄內容 | `ls -l | less` |
查看文件11-20行 | `head -n 20 file | tail -n 10` |
錯誤日志分離 | command > output.log 2> error.log | 輸出/錯誤分流 |
查找并刪除臨時文件 | find /tmp -name "*.tmp" -exec rm {} \; | find與-exec結合 |
備份并壓縮目錄 | tar -czvf backup_$(date +%F).tar.gz /data | 帶日期壓縮包 |
使用提示:
- 選項可組合使用:
ls -alh
=-a
(所有文件) +-l
(詳情) +-h
(人性化大小)- 通配符:
*
匹配任意字符(rm *.tmp
)?
匹配單個字符(file?.txt
){}
序列展開(touch season{1,2}_ep{1..6}.txt
)- 永久別名:編輯
~/.bashrc
添加alias
,執行source ~/.bashrc
生效
文件與目錄操作
命令 | 示例 | 說明 |
---|---|---|
ls | ls -la | 列出目錄內容(-l 詳情,-a 隱藏文件) |
cd | cd ~/documents | 切換工作目錄 |
pwd | pwd | 顯示當前工作目錄路徑 |
cp | cp file.txt backup/ -r | 復制文件/目錄(-r 遞歸復制) |
mv | mv old.txt new.txt | 移動/重命名文件 |
rm | rm -rf temp_dir/ | 刪除文件/目錄(-r 遞歸,-f 強制) |
mkdir | mkdir new_folder | 創建新目錄 |
find | find /home -name "*.log" | 按名稱搜索文件 |
文件查看與處理
命令 | 示例 | 說明 |
---|---|---|
cat | cat config.yaml | 顯示整個文件內容 |
head | head -n 10 log.txt | 顯示文件前 N 行 |
tail | tail -f app.log | 顯示文件末尾(-f 實時追蹤) |
less | less large_file.log | 分頁瀏覽文件(支持搜索) |
grep | grep -i "error" system.log | 文本搜索(-i 忽略大小寫) |
wc | wc -l data.csv | 統計行數/單詞數/字符數 |
系統監控與管理
命令 | 示例 | 說明 |
---|---|---|
top | top | 動態進程監控(實時 CPU/內存) |
htop | htop | 增強型進程監控(需安裝) |
ps | `ps aux | grep nginx` |
df | df -h | 磁盤空間使用(-h 易讀格式) |
free | free -m | 內存使用情況(-m 顯示 MB) |
kill | kill -9 1234 | 終止進程(-9 強制終止) |
systemctl | systemctl restart nginx | 管理系統服務 |
網絡操作
命令 | 示例 | 說明 |
---|---|---|
ping | ping google.com | 測試網絡連通性 |
ifconfig /ip | ip addr show | 查看網絡接口信息 |
netstat | netstat -tuln | 查看網絡連接和端口 |
ssh | ssh user@192.168.1.100 | 遠程登錄服務器 |
scp | scp file.txt user@host:/path | 安全復制文件 |
wget | wget https://example.com/file.iso | 下載網絡文件 |
curl | curl -O https://example.com/image.jpg | 網絡數據傳輸工具 |
權限管理
命令 | 示例 | 說明 |
---|---|---|
chmod | chmod 755 script.sh | 修改文件權限(755=rwxr-xr-x) |
chown | chown user:group file.txt | 修改文件所有者 |
sudo | sudo apt update | 以管理員權限執行命令 |
passwd | passwd | 修改用戶密碼 |
壓縮與解壓
命令 | 示例 | 說明 |
---|---|---|
tar | tar -czvf archive.tar.gz folder/ | 創建壓縮包(-c 創建,-z gzip) |
tar | tar -xzvf archive.tar.gz | 解壓壓縮包(-x 解壓) |
zip | zip docs.zip *.txt | 創建 ZIP 壓縮包 |
unzip | unzip archive.zip | 解壓 ZIP 文件 |
gzip | gzip large_file.log | 壓縮文件(生成 .gz 文件) |
實用技巧
操作 | 示例 | 說明 |
---|---|---|
管道 ` | ` | `cat log.txt |
輸出重定向 > | ls -l > file_list.txt | 覆蓋寫入文件 |
追加重定向 >> | echo "New" >> notes.txt | 追加到文件末尾 |
后臺運行 & | python3 app.py & | 在后臺運行程序 |
命令幫助 | man grep | 查看命令手冊 |
命令幫助 | ls --help | 查看快速幫助 |
歷史命令 | history | 查看命令歷史記錄 |
📌 使用提示:
- 按
Tab
鍵自動補全命令或文件名Ctrl+C
終止當前命令,Ctrl+Z
掛起進程!!
重復上條命令,!$
引用上條命令的最后一個參數- 使用
alias
創建常用命令的快捷方式(如alias ll='ls -alF'
)