Giả sử tôi có một loạt ảnh, tất cả đều có thông tin EXIF chính xác và các ảnh được đặt tên ngẫu nhiên (vì một vấn đề tôi gặp phải). Tôi có một chương trình nhỏ được gọi là jhead
cho tôi đầu ra dưới đây:
$ jhead IMG_9563.JPG
File name : IMG_9563.JPG
File size : 638908 bytes
File date : 2011:02:03 20:25:09
Camera make : Canon
Camera model : Canon PowerShot SX210 IS
Date/Time : 2011:02:03 20:20:24
Resolution : 1500 x 2000
Flash used : Yes (manual)
Focal length : 5.0mm (35mm equivalent: 29mm)
CCD width : 6.17mm
Exposure time: 0.0080 s (1/125)
Aperture : f/3.1
Focus dist. : 0.29m
ISO equiv. : 125
Exposure bias: -1.67
Whitebalance : Manual
Light Source : Daylight
Metering Mode: pattern
Exposure Mode: Manual
Bây giờ tôi cần đổi tên tất cả các ảnh trong thư mục ở định dạng tiếp theo:
001.JPG
002.JPG
003.JPG
...
Trong đó số phụ sẽ là hình ảnh cũ hơn và tối đa mới hơn.
Tôi không giỏi viết kịch bản, vì vậy tôi đang yêu cầu giúp đỡ.
Tôi nghĩ một kịch bản bash là đủ, nhưng nếu bạn cảm thấy thoải mái hơn, bạn có thể viết một kịch bản python.
Tôi đã nghĩ trong một cái gì đó như:
$ mv IMG_9563.JPG `jhead IMG_9563.JPG | grep date`
nhưng tôi không biết làm thế nào để làm điều đó cho tất cả các tệp cùng một lúc.
ls *.JPG | wc > rename
Và sau đó tôi phải sử dụng một tập lệnh đổi tên thành XXX.JPG
wc
, tôi quên mất một thứ tự để đặt tên.