วันนี้เรามาดูคำสั่งของ Linux สำหรับใช้ในกรณีที่เราต้องการลบไฟล์หรือโฟลเดอร์ที่มีอยู่เกือบทั้งหมดไป แต่ให้เหลือไว้เฉพาะไฟล์ 1 ไฟล์ที่ต้องการกันครับ
ตัวอย่างตามในรูปนี้
สิ่งที่เราต้องการก็คือลบทุกอย่าง แต่ให้เก็บโฟลเดอร์ชื่อ last
ไว้
คำสั่งที่ใช้จะมี 2 คำสั่งด้วยกันคือ
$ shopt -s extglob
$ rm -- !(last)
สำหรับคำสั่งแรก shopt
ตามด้วย -s
จะเป็นการ enable ค่า extglob
- ดูรายละเอียดของ shopt และ extglob ได้ที่นี่
พอเราเอามาใช้ร่วมกับคำสั่ง rm
ที่ตามมานั่นก็คือ ลบทุกอย่างแต่ไม่ลบที่อยู่ใน !(pattern-list)
- ในที่นี้ก็คือไม่ลบโฟลเดอร์ชื่อ last
นั่นเอง