所有工具
免費

一份可搜尋、可列印的 Bash / shell 參考——導覽、檔案、管道、變數、迴圈、條件判斷和實用的單行指令。免費。

導覽

8
pwd
印出工作目錄
ls -la
列出所有檔案及詳情
cd /path
切換目錄
cd -
回到前一個目錄
cd ~
前往家目錄
tree -L 2
顯示目錄樹(2 層)
pushd / popd
壓入與彈出目錄堆疊
ls -lhS
依大小列出,易讀格式

檔案與目錄

10
touch file.txt
建立空檔案
mkdir -p a/b/c
建立巢狀目錄
cp -r src dest
遞迴複製
mv old new
移動或重新命名
rm -rf dir
遞迴移除(小心!)
ln -s target link
建立符號連結
cat file.txt
印出檔案內容
head -n 20 / tail -n 20
前/後 20 行
tail -f log.txt
隨檔案增長持續追蹤
less file.txt
分頁瀏覽檔案

搜尋與尋找

8
grep 'pattern' file
在檔案中搜尋樣式
grep -rin 'text' .
遞迴、不分大小寫、附行號
find . -name '*.php'
依名稱尋找檔案
find . -type f -mtime -1
過去一天內修改的檔案
find . -size +10M
大於 10 MB 的檔案
which node
定位執行檔
locate file.txt
依索引資料庫尋找
grep -v 'skip' file
反向比對(排除行)

文字處理

9
wc -l file
計算行數
sort file | uniq -c
先排序再計算重複
cut -d',' -f1 file
擷取 CSV 欄位
awk '{print $1}' file
印出第一個欄位
sed 's/old/new/g' file
替換文字
tr 'a-z' 'A-Z'
轉換字元
diff a.txt b.txt
比較兩個檔案
tee out.txt
同時寫入檔案與 stdout
xargs -I{} cmd {}
從輸入建構命令

管線與重新導向

9
a | b
將 a 的輸出導入 b
cmd > file
重新導向 stdout(覆寫)
cmd >> file
重新導向 stdout(附加)
cmd 2> err.log
重新導向 stderr
cmd > out 2>&1
重新導向兩個串流
cmd < input.txt
從檔案讀取 stdin
cmd1 && cmd2
僅當 cmd1 成功時才執行 cmd2
cmd1 || cmd2
僅當 cmd1 失敗時才執行 cmd2
cmd &
於背景執行

權限與擁有權

8
chmod 755 file
擁有者設 rwx,其他人設 rx
chmod +x script.sh
使檔案可執行
chmod -R 644 dir
遞迴變更權限
chown user:group file
變更擁有者與群組
umask 022
預設權限遮罩
sudo cmd
以 root 執行命令
stat file
顯示檔案中繼資料
ls -l file
檢視權限位元

程序與系統

9
ps aux
列出執行中的程序
top / htop
即時程序監控
kill -9 PID
強制終止程序
pkill -f name
依名稱終止程序
jobs / fg / bg
管理背景工作
df -h
磁碟空間使用量
du -sh dir
目錄大小
free -h
記憶體使用量
uname -a
系統與核心資訊

變數與展開

9
NAME='value'
設定變數(不含空格)
echo \"$NAME\"
使用變數
export PATH=\"$PATH:/x\"
匯出至子程序
$(command)
命令替換
${VAR:-default}
未設定時的預設值
$1 $2 $@
腳本位置引數
$?
上一個命令的結束狀態
read -p 'Name: ' x
讀取使用者輸入
echo {1..5}
大括號展開

腳本撰寫

9
#!/usr/bin/env bash
Shebang 行
set -euo pipefail
更安全的嚴格模式
if [ -f file ]; then ...; fi
依檔案測試的條件
[ \"$a\" = \"$b\" ]
字串比較
for f in *.txt; do ...; done
走訪檔案
while read line; do ...; done < file
逐行讀取檔案
case \"$x\" in a) ...;; esac
多向分支
function greet() { echo hi; }
定義函式
trap cleanup EXIT
於結束時執行處理常式

沒有條目符合「:q」。


需要協助?
使用此工具時遇到問題?請告訴我們的團隊。
回報問題

將此免費工具新增到你自己的網站 — 複製並貼上下面的程式碼。