เคยบ้างไหม ที่ต้องเปลี่ยนชื่อไฟล์บน Linux หลายๆ ไฟล์พร้อมกัน เช่นเปลี่ยนชื่อไฟล์จาก .htm เป็น .html
แทนที่ต้องใช้คำสั่ง mv เพื่อเปลี่ยนชื่อไฟล์ทีละไฟล์ หรือเขียน shell script มาช่วยเปลี่ยนชื่อ
ใช้ Linux มาตั้งนาน เพิ่งรู้ว่ามีคำสั่งแบบนี้ด้วย (ฮา) เปลี่ยนชื่อไฟล์หลายไฟล์พร้อมกันด้วยการรันคำสั่งเดียว rename
วิธีการใช้คำสั่ง
$ rename from to file...
คำอธิบาย
- from รูปแบบชื่อไฟล์เดิม
- to รูปแบบชื่อไฟล์ใหม่
- file… ระบุไฟล์ที่จะเปลี่ยน
ตัวอย่างการใช้
ตัวอย่างชื่อไฟล์เดิม
$ ls -l total 0 -rw-r--r-- 1 user1 users 0 Jan 8 15:30 page1.htm -rw-r--r-- 1 user1 users 0 Jan 8 15:30 page2.htm -rw-r--r-- 1 user1 users 0 Jan 8 15:30 page3.htm -rw-r--r-- 1 user1 users 0 Jan 8 15:30 page4.htm
ต้องการเปลี่ยนชื่อไฟล์ .htm เป็น .html สามารถทำได้ด้วยการรันคำสั่ง rename เพียงครั้งเดียว
$ rename .htm .html *.htm
เสร็จ! ชื่อไฟล์ได้ถูกเปลี่ยนไปแล้ว
$ ls -l total 0 -rw-r--r-- 1 user1 users 0 Jan 8 15:30 page1.html -rw-r--r-- 1 user1 users 0 Jan 8 15:30 page2.html -rw-r--r-- 1 user1 users 0 Jan 8 15:30 page3.html -rw-r--r-- 1 user1 users 0 Jan 8 15:30 page4.html
ข้อมูลอ้างอิง
- man rename