[IT014] Bulk renaming files based on .csv filename mapping (Mac OSX)
Bulk renaming files based on .csv filename mapping (Mac OSX) - วิธีเปลี่ยนชื่อไฟล์จำนวนมากตามชื่อที่ลิสท์ไว้ในไฟล์ csv
Case: มีไฟล์รูปจำนวนหนึ่ง ที่ต้องการเปลี่ยนชื่อไม่ให้ชื่อไฟล์เรียงกันหรือเป็น pattern ที่คาดเดาได้
Solution:
1. สร้าง list ของชื่อไฟล์ใหม่ที่ต้องการในรูปแบบไฟล์ csv
2. เขียน script เพื่ออ่านไฟล์ csv และรันคำสั่งเปลี่ยนชื่อไฟล์ (mv)
Tools:
1. Microsoft Excel
2. Terminal
...
Instructions:
1. นำไฟล์รูปทั้งหมดที่ต้องการเปลี่ยนชื่อใส่ไว้ใน folder เดียวกัน (ตัวอย่างชื่อ folder "test" ที่ desktop)
2. select all ไฟล์รูปทั้งหมด แล้ว copy จากนั้นเปิด Excel แล้ว paste จะได้คอลัมน์ของชื่อไฟล์ทั้งหมด
3. คอลัมน์ที่สอง ให้ใส่ชื่อไฟล์ใหม่ที่ต้องการ เรียงลงมาให้เท่าจำนวนชื่อไฟล์ที่มี กรณีนี้ต้องการ random ชื่อไฟล์ ก็ใส่สูตร random ได้ประมาณนี้
4. แถวสุดท้ายให้ใส่ 0 ปิดท้ายทั้ง 2 คอลัมน์
ตัวอย่างของตาราง excel จะออกมาเป็นแบบนี้
5. Save as ไว้ที่ folder เดียวกับไฟล์รูปที่จะแปลง เลือก save เป็นไฟล์ .csv ตั้งชื่อว่า data.csv
6. เปิด terminal ขึ้นมา แล้วใส่ script นี้ลงไป กด enter
อธิบายตัวแปร
/Users/Apple/Desktop/test/ คือ path ของ folder ที่เตรียมไว้
/Users/Apple/Desktop/test/data.csv คือ path ของไฟล์ csv ที่เตรียมไว้
7. หลังจากกด enter จะเป็น log บน terminal ดังนี้
mv -v /Users/Apple/Desktop/test/DSCN3421.jpg /Users/Apple/Desktop/test/AG528T.jpg mv -v /Users/Apple/Desktop/test/DSCN3423.jpg /Users/Apple/Desktop/test/BH514F.jpg mv -v /Users/Apple/Desktop/test/DSCN3459.jpg /Users/Apple/Desktop/test/XQ315M.jpg mv -v /Users/Apple/Desktop/test/DSCN3464.jpg /Users/Apple/Desktop/test/TR637I.jpg
ให้ copy log ทั้งหมดนี้แล้ว paste บน terminal แล้วกด enter อีกที ไฟล์ทั้งหมดจะถูกเปลี่ยนชื่อทันที
ampmie152
http://ampmie152.blogspot.com
Case: มีไฟล์รูปจำนวนหนึ่ง ที่ต้องการเปลี่ยนชื่อไม่ให้ชื่อไฟล์เรียงกันหรือเป็น pattern ที่คาดเดาได้
Solution:
1. สร้าง list ของชื่อไฟล์ใหม่ที่ต้องการในรูปแบบไฟล์ csv
2. เขียน script เพื่ออ่านไฟล์ csv และรันคำสั่งเปลี่ยนชื่อไฟล์ (mv)
Tools:
1. Microsoft Excel
2. Terminal
...
Instructions:
1. นำไฟล์รูปทั้งหมดที่ต้องการเปลี่ยนชื่อใส่ไว้ใน folder เดียวกัน (ตัวอย่างชื่อ folder "test" ที่ desktop)
2. select all ไฟล์รูปทั้งหมด แล้ว copy จากนั้นเปิด Excel แล้ว paste จะได้คอลัมน์ของชื่อไฟล์ทั้งหมด
3. คอลัมน์ที่สอง ให้ใส่ชื่อไฟล์ใหม่ที่ต้องการ เรียงลงมาให้เท่าจำนวนชื่อไฟล์ที่มี กรณีนี้ต้องการ random ชื่อไฟล์ ก็ใส่สูตร random ได้ประมาณนี้
=CHAR(RANDBETWEEN(65,90))&CHAR(RANDBETWEEN(65,90))&RANDBETWEEN(100,999)&CHAR(RANDBETWEEN(65,90))&".jpg"
4. แถวสุดท้ายให้ใส่ 0 ปิดท้ายทั้ง 2 คอลัมน์
ตัวอย่างของตาราง excel จะออกมาเป็นแบบนี้
DSCN3421.jpg | AG528T.jpg |
DSCN3423.jpg | BH514F.jpg |
DSCN3459.jpg | XQ315M.jpg |
DSCN3464.jpg | TR637I.jpg |
0 | 0 |
5. Save as ไว้ที่ folder เดียวกับไฟล์รูปที่จะแปลง เลือก save เป็นไฟล์ .csv ตั้งชื่อว่า data.csv
6. เปิด terminal ขึ้นมา แล้วใส่ script นี้ลงไป กด enter
อธิบายตัวแปร
/Users/Apple/Desktop/test/ คือ path ของ folder ที่เตรียมไว้
/Users/Apple/Desktop/test/data.csv คือ path ของไฟล์ csv ที่เตรียมไว้
7. หลังจากกด enter จะเป็น log บน terminal ดังนี้
mv -v /Users/Apple/Desktop/test/DSCN3421.jpg /Users/Apple/Desktop/test/AG528T.jpg mv -v /Users/Apple/Desktop/test/DSCN3423.jpg /Users/Apple/Desktop/test/BH514F.jpg mv -v /Users/Apple/Desktop/test/DSCN3459.jpg /Users/Apple/Desktop/test/XQ315M.jpg mv -v /Users/Apple/Desktop/test/DSCN3464.jpg /Users/Apple/Desktop/test/TR637I.jpg
ให้ copy log ทั้งหมดนี้แล้ว paste บน terminal แล้วกด enter อีกที ไฟล์ทั้งหมดจะถูกเปลี่ยนชื่อทันที
ampmie152
http://ampmie152.blogspot.com
ความคิดเห็น
แสดงความคิดเห็น