ชีตสรุป Shell
ข้อมูลอ้างอิง Bash / shell ที่ค้นหาและพิมพ์ได้ — การนำทาง ไฟล์ pipes ตัวแปร ลูป เงื่อนไข และ one-liners ที่มีประโยชน์ ฟรี
การนำทาง
8pwd
แสดงไดเรกทอรีปัจจุบัน
ls -la
แสดงไฟล์ทั้งหมดพร้อมรายละเอียด
cd /path
เปลี่ยนไดเรกทอรี
cd -
ไปยังไดเรกทอรีก่อนหน้า
cd ~
ไปยังไดเรกทอรี home
tree -L 2
แสดงโครงสร้างไดเรกทอรี (2 ระดับ)
pushd / popd
push และ pop สแตกไดเรกทอรี
ls -lhS
แสดงตามขนาด อ่านง่าย
ไฟล์และไดเรกทอรี
10touch file.txt
สร้างไฟล์ว่าง
mkdir -p a/b/c
สร้างไดเรกทอรีซ้อนกัน
cp -r src dest
คัดลอกแบบ recursive
mv old new
ย้ายหรือเปลี่ยนชื่อ
rm -rf dir
ลบแบบ recursive (ระวัง!)
ln -s target link
สร้าง symbolic link
cat file.txt
แสดงเนื้อหาไฟล์
head -n 20 / tail -n 20
20 บรรทัดแรก / สุดท้าย
tail -f log.txt
ติดตามไฟล์ขณะที่เพิ่มขึ้น
less file.txt
ดูไฟล์ทีละหน้า
ค้นหาและค้นพบ
8grep 'pattern' file
ค้นหารูปแบบในไฟล์
grep -rin 'text' .
recursive ไม่สนตัวพิมพ์ มีเลขบรรทัด
find . -name '*.php'
ค้นหาไฟล์ตามชื่อ
find . -type f -mtime -1
ไฟล์ที่แก้ไขในวันที่ผ่านมา
find . -size +10M
ไฟล์ที่ใหญ่กว่า 10 MB
which node
ค้นหาตำแหน่งไฟล์ executable
locate file.txt
ค้นหาจากฐานข้อมูลที่จัดดัชนี
grep -v 'skip' file
กลับการจับคู่ (ยกเว้นบรรทัด)
การประมวลผลข้อความ
9wc -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 {}
สร้างคำสั่งจาก input
Pipes และการ redirect
9a | b
ส่ง output ของ a เข้า b
cmd > file
redirect stdout (เขียนทับ)
cmd >> file
redirect stdout (ต่อท้าย)
cmd 2> err.log
redirect stderr
cmd > out 2>&1
redirect ทั้งสอง stream
cmd < input.txt
อ่าน stdin จากไฟล์
cmd1 && cmd2
รัน cmd2 ต่อเมื่อ cmd1 สำเร็จ
cmd1 || cmd2
รัน cmd2 ต่อเมื่อ cmd1 ล้มเหลว
cmd &
รันเบื้องหลัง
สิทธิ์และความเป็นเจ้าของ
8chmod 755 file
ตั้ง rwx ให้เจ้าของ, rx ให้คนอื่น
chmod +x script.sh
ทำให้ไฟล์รันได้
chmod -R 644 dir
เปลี่ยนสิทธิ์แบบ recursive
chown user:group file
เปลี่ยนเจ้าของและกลุ่ม
umask 022
mask สิทธิ์เริ่มต้น
sudo cmd
รันคำสั่งในฐานะ root
stat file
แสดง metadata ของไฟล์
ls -l file
ดูบิตสิทธิ์
โปรเซสและระบบ
9ps aux
แสดงโปรเซสที่กำลังทำงาน
top / htop
ตัวตรวจโปรเซสแบบเรียลไทม์
kill -9 PID
บังคับปิดโปรเซส
pkill -f name
ปิดโปรเซสตามชื่อ
jobs / fg / bg
จัดการงานเบื้องหลัง
df -h
การใช้พื้นที่ดิสก์
du -sh dir
ขนาดของไดเรกทอรี
free -h
การใช้หน่วยความจำ
uname -a
ข้อมูลระบบและ kernel
ตัวแปรและการขยายค่า
9NAME='value'
ตั้งค่าตัวแปร (ไม่มีช่องว่าง)
echo \"$NAME\"
ใช้ตัวแปร
export PATH=\"$PATH:/x\"
export ไปยังโปรเซสลูก
$(command)
การแทนค่าด้วยคำสั่ง
${VAR:-default}
ค่าเริ่มต้นเมื่อยังไม่ได้ตั้ง
$1 $2 $@
อาร์กิวเมนต์ positional ของสคริปต์
$?
สถานะออกของคำสั่งล่าสุด
read -p 'Name: ' x
อ่าน input ของผู้ใช้
echo {1..5}
การขยายด้วยวงเล็บปีกกา
การเขียนสคริปต์
9#!/usr/bin/env bash
บรรทัด shebang
set -euo pipefail
โหมด strict ที่ปลอดภัยกว่า
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; }
นิยาม function
trap cleanup EXIT
รัน handler เมื่อออก
ไม่มีรายการที่ตรงกับ “:q”
ต้องการความช่วยเหลือ?
พบปัญหากับเครื่องมือนี้หรือไม่? แจ้งทีมงานของเรา