H2H2Bash là gì và vì sao nên học?
Bash (Bourne Again SHell) là trình thông dịch dòng lệnh phổ biến trên Linux và macOS. Dùng Bash giúp:
Làm việc nhanh hơn so với click chuột
Tự động hóa bằng shell script
Hiểu sâu hệ thống file, quyền, tiến trình
H2H2Nhóm lệnh điều hướng
pwd: in thư mục hiện tại
pwdcd: đổi thư mục (mẹo:cd -quay lại thư mục trước)
cd /home/user/projects
cd ..
cd -ls: liệt kê nội dung (thường dùngls -la)
ls
ls -laH2H2Quản lý tệp và thư mục
touch: tạo tệp trống
touch notes.txtmkdir: tạo thư mục (có thể tạo lồng nhau)
mkdir -p src/componentsrm: xóa tệp/thư mục (cẩn thận!)
rm file.txt
rm -rf dist/cp: sao chép (thêm-rđể copy thư mục)
cp .env.example .env
cp -r assets/ public/assets/mv: di chuyển hoặc đổi tên
mv oldname.txt newname.txt
mv build/* /var/www/html/H2H2Xem và tìm kiếm nội dung
cat: in toàn bộ tệp ra màn hình
cat [README.md](<http://README.md>)less: xem tệp dài từng trang (q để thoát)
less logs/app.logheadvàtail: xem đầu/cuối tệp
head -n 20 access.log
tail -n 50 access.log
tail -f access.log # theo dõi realtimegrep: tìm chuỗi trong tệp/thư mục
grep -i "error" access.log
grep -R "DATABASE_URL" .H2H2Quyền truy cập và sở hữu
chmod: đổi quyền (rwx)
chmod +x [deploy.sh](<http://deploy.sh>)
chmod 755 [script.sh](<http://script.sh>)chown: đổi chủ sở hữu (cần sudo)
sudo chown user:group /var/www/html -RH2H2Quản lý tiến trình
ps: xem tiến trình
ps aux | headkill: kết thúc tiến trình theo PID
kill 1234
kill -9 1234 # buộc dừng (chỉ dùng khi cần)Tìm PID theo tên rồi dừng
ps aux | grep node
kill $(pgrep -f "node server.js")H2H2Thông tin hệ thống
date: xem ngày giờ
datedf: dung lượng đĩa
df -hdu: kích thước thư mục
du -sh .H2H2Chuyển hướng và piping
Ghi đè
>và nối thêm>>
echo "Hello" > hello.txt
echo "World" >> hello.txtLấy đầu vào từ tệp
<
sort < unsorted.txtPipe
|để xâu chuỗi lệnh
cat access.log | grep 500 | awk '{print $1}' | sort | uniq -c | sort -nr | headH2H2Mẹo thực hành tốt
Thêm
-ikhi xóa/ghi để Bash nhắc xác nhận:rm -i file.txtDùng wildcard cẩn thận:
rm *.logchỉ khi chắc chắn đường dẫnDùng biến môi trường và trích dẫn chuỗi:
echo "$HOME"Viết alias cho lệnh dài:
alias ll='ls -la'Tạo script chạy được: thêm shebang
#!/usr/bin/env bashvàchmod +x [file.sh](<http://file.sh>)
H2H2FAQ
Học lệnh nào trước?
Bắt đầu với
pwd,ls,cd,cat,grep,mkdir,rm,cp,mv.
Khác nhau giữa
>và>>?>ghi đè tệp,>>nối thêm vào cuối tệp.
Làm sao dừng tiến trình nhanh?
Tìm PID bằng
pshoặcpgrep, dừng bằngkill. Tránh-9nếu chưa cần.
Xem hướng dẫn chi tiết của lệnh?
Dùng
man <lệnh>hoặc--help. Có thể tra cứu trên web với các công cụ tham khảo bên dưới.
H2H2Tài nguyên tham khảo
GNU Bash Manual: https://www.gnu.org/software/bash/manual/
TLDR Pages (cheatsheet lệnh nhanh): https://tldr.sh/
ExplainShell (giải thích cú pháp lệnh): https://explainshell.com/
Learn Microsoft – Hướng dẫn WSL, Terminal, và công cụ dev trên Windows: Learn Microsoft
Gợi ý: Nếu bạn dùng Windows, cân nhắc WSL để chạy Bash “chuẩn Linux” ngay trong Windows. Xem tại Learn Microsoft