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 命令:man、touch/cat/less、sort/grep、cut、sed、tar、find、diff、uniq、chmod

編輯:Linux 教學

1. man — 幫助手冊

man ls          # 查看 ls 完整手冊
man -k keyword  # 搜索關鍵字相關命令

2. touch / cat / less — 文件創建與查看

touch demo.txt           # 創建空文件
cat demo.txt             # 全量輸出 (適合小文件)
less demo.txt            # 分頁查看,支援 ↑↓/PgUp/PgDown/q 退出
more demo.txt            # 僅支援 Enter 向下,無法向上

3. sort / grep — 排序與搜索

sort 常用選項

sort -k2 test.txt        # 按第 2 列字典序
sort -h test.txt         # 按數值大小 (人類可讀)
sort -k5 -M test.txt     # 按月份排序 (第 5 列)
sort -u test.txt         # 去重
sort -r test.txt         # 逆序

grep 常用選項

grep "dennis" test.txt           # 基礎搜索
grep -i "dennis" test.txt        # 忽略大小寫
grep -w "dennis" test.txt        # 全詞匹配
grep -r "pattern" /path          # 遞歸搜索目錄
grep -E "regex" file             # 正則表達式
grep "dennis" f1.txt f2.txt f3.txt  # 多文件搜索

4. cut — 列提取

cut -c1-2 test.txt              # 提取字符位置 1-2
cut -d' ' -f2 test.txt          # 以空格分隔,取第 2 列
cut -d':' -f1 /etc/passwd       # 以 : 分隔,取用戶名列

5. sed — 流編輯器

sed 's/mike/michael/' test.txt          # 首次匹配替換
sed 's/mike/michael/g' test.txt         # 全局替換 (加 g)
sed -i 's/old/new/g' file.txt           # 直接修改文件 (-i)
sed -n '10,20p' file.txt                # 只打印第 10-20 行

6. tar — 打包壓縮

tar -cf all.tar *.jpg            # 打包
tar -czf all.tar.gz *.jpg        # 打包 + gzip 壓縮
tar -cjf all.tar.bz2 *.jpg       # 打包 + bzip2 壓縮
tar -xf all.tar                  # 解包
tar -xzf all.tar.gz              # 解壓 .tar.gz
tar -xjf all.tar.bz2             # 解壓 .tar.bz2
tar -xf all.tar -C /opt/         # 指定解壓目錄 (-C)

7. find — 文件查找

find . -name test.txt            # 當前目錄遞歸查找
find / -name passwd              # 全盤查找
find . -type f -size +100M       # 查找 >100M 文件
find . -mtime -7                 # 7 天內修改過的文件
find . -name "*.log" -delete     # 刪除所有 .log (慎用)

8. diff — 文件比較

diff test.txt test1.txt
diff -u test.txt test1.txt       # 統一格式 (Git diff 風格)
diff -r dir1 dir2                # 目錄遞歸比較

9. uniq — 去重

uniq test.txt                    # 相鄰行去重 (通常配合 sort)
sort test.txt | uniq             # 完整去重
sort test.txt | uniq -c          # 顯示重複次數
sort test.txt | uniq -d          # 只顯示重複行

10. chmod — 權限管理

chmod 755 script.sh              # rwxr-xr-x
chmod u+x script.sh              # 給擁有者加執行權
chmod -R 644 /var/www/html       # 遞歸修改目錄權限
# 權限數值:4=讀 2=寫 1=執行 0=無

組合拳實戰

# 查找最近 7 天修改的 .log 文件,提取 ERROR 行,統計前 10 IP
find /var/log -name "*.log" -mtime -7 -exec grep "ERROR" {} \; | \
awk '{print $1}' | sort | uniq -c | sort -nr | head -10

總結

這 10 個命令覆蓋「幫助、文件操作、文本處理、打包、查找、比較、去重、權限」核心場景。熟練組合使用,日常開發運維效率將質變。

Copyright © Windows教程網 All Rights Reserved