คำสั่ง Linux เป็นพื้นฐานของงานระบบและ DevOps ช่วยจัดการไฟล์ ระบบ และการ deploy ได้อย่างมีประสิทธิภาพ
# สร้าง directory mkdir logs mkdir -p path/to/deep/folder # สร้างทั้ง path # สร้างไฟล์เปล่า touch app.log # คัดลอก cp file.txt backup.txt cp -r folder/ backup/ # คัดลอก folder # ย้าย/เปลี่ยนชื่อ mv old.txt new.txt mv file.txt /path/to/folder/ # ลบ rm file.txt rm -r folder/ # ลบ folder rm -rf folder/ # ลบแบบบังคับ (ระวัง!)
# สร้าง symbolic link ln -s /path/to/original link_name # ตัวอย่าง ln -s /var/www/app/current /var/www/app/public # ดู link ls -la # จะเห็น -> ชี้ไปที่ไหน
# แสดงทั้งไฟล์ cat file.txt cat -n file.txt # พร้อมเลขบรรทัด # ดูแบบ scroll ได้ less file.txt # q เพื่อออก, / เพื่อค้นหา # ดูส่วนต้น/ท้าย head file.txt # 10 บรรทัดแรก head -n 20 file.txt # 20 บรรทัดแรก tail file.txt # 10 บรรทัดท้าย tail -n 50 file.txt # 50 บรรทัดท้าย tail -f app.log # ติดตาม log แบบ realtime
# นับบรรทัด/คำ/ตัวอักษร wc file.txt # lines words chars wc -l file.txt # นับบรรทัด # แสดงค่า unique sort file.txt | uniq # ค่าไม่ซ้ำ sort file.txt | uniq -c # พร้อมนับจำนวน
# Permission: r(4) w(2) x(1) # Owner Group Others chmod 644 file.txt # rw-r--r-- (อ่านได้ทุกคน, เจ้าของแก้ได้) chmod 755 script.sh # rwxr-xr-x (รันได้ทุกคน) chmod 700 private/ # rwx------ (เจ้าของเท่านั้น) # แบบ symbolic chmod +x script.sh # เพิ่มสิทธิ์ execute chmod -w file.txt # ลบสิทธิ์ write chmod u+x,g+r file # user +x, group +r
# เปลี่ยนเจ้าของ chown user file.txt chown user:group file.txt chown -R user:group folder/ # recursive # ดู permission ls -la # -rw-r--r-- 1 user group 1234 Jan 1 10:00 file.txt