หากการประมวลผลที่คุณต้องการคือการเปลี่ยนชื่อ 1.JPG เป็น MyPicture1-320x480.jpg และ 2.JPG เป็น MyPicture2-320x480.jpg เป็นต้น หากคุณใช้ Bash shell คุณสามารถเปลี่ยนเป็นไดเร็กทอรีที่มี ไฟล์และใช้บางอย่างเช่น:
ฉัน=0; สำหรับ n ใน *.JPG; ทำ mv "${n}" "MyPicture${n/.JPG/-320x480.jpg}"; ฉัน=$((ฉัน+1)); เสร็จแล้ว; echo "ประมวลผล ${i} ไฟล์"
(ทั้งหมดข้างต้นสามารถพิมพ์ได้ในบรรทัดคำสั่งเดียว)
หรือหากต้องการใส่ลงในสคริปต์ การอ่านหลายบรรทัดจะง่ายกว่า:
# รีเซ็ตตัวแปรตัวนับหากคุณต้องการนับจำนวนไฟล์ที่ประมวลผล
ฉัน=0
# วนซ้ำสำหรับไฟล์ทั้งหมดในไดเร็กทอรีการทำงานปัจจุบันที่ลงท้ายด้วย ".JPG"
สำหรับ n ใน *.JPG
ทำ
# เปลี่ยนชื่อ (ย้าย) แต่ละไฟล์จากชื่อเดิม (โดยทั่วไป ${n} จะปลอดภัยกว่า $n)
# เป็นชื่อใหม่พร้อมข้อความก่อนหน้าชื่อเดิมและต่อท้ายด้วย
# ชื่อเดิม (".JPG") แทนที่ด้วยตอนจบใหม่
mv "${n}" "รูปภาพของฉัน${n/.JPG/-320x480.jpg}"
# เพิ่มตัวแปรตัวนับ
ฉัน=$((ฉัน+1))
เสร็จแล้ว
# แสดงจำนวนไฟล์ที่ประมวลผล
echo "ประมวลผล ${i} ไฟล์"
หากการประมวลผลที่คุณต้องการแตกต่างจากนี้ คุณอาจต้องแก้ไขคำถามของคุณเพื่อให้รายละเอียดเพิ่มเติม