मान लें कि मेरे पास फ़ोटो का एक गुच्छा है, सभी सही EXIF जानकारी के साथ हैं, और फ़ोटो को बेतरतीब ढंग से नाम दिया गया है (एक समस्या के कारण)। मेरा एक छोटा सा कार्यक्रम है, jhead
जो मुझे निम्न आउटपुट देता है:
$ 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
अब मुझे अगले प्रारूप में फ़ोल्डर में सभी फ़ोटो का नाम बदलने की आवश्यकता है:
001.JPG
002.JPG
003.JPG
...
जहां छोटी संख्या में पुरानी छवि होगी, और अधिकतम नया होगा।
मैं इतनी अच्छी स्क्रिप्टिंग नहीं कर रहा हूं, इसलिए मैं मदद मांग रहा हूं।
मुझे लगता है कि एक बैश स्क्रिप्ट पर्याप्त है, लेकिन यदि आप अधिक सहज महसूस करते हैं, तो आप एक पायथन स्क्रिप्ट लिख सकते हैं।
मैंने कुछ इस तरह से सोचा:
$ mv IMG_9563.JPG `jhead IMG_9563.JPG | grep date`
लेकिन मैं नहीं जानता कि कैसे एक ही बार में सभी फ़ाइलों के लिए।
ls *.JPG | wc > rename
और फिर मुझे एक स्क्रिप्ट का नाम बदलकर XXX.JPG
wc
, मैं नाम से ऑर्डर करने के लिए भूल गया।