DCIM kausta piltide mass-ümbernimetamine mustri järgi: erinevus redaktsioonide vahel

Allikas: Pingviini viki
Mine navigeerimisribaleMine otsikasti
Tramm (arutelu | kaastöö)
Uus lehekülg: 'Kategooria:Skriptid <source lang="bash"> #!/bin/bash nimekiri=$(find -iname "*.jpg") for fail in $nimekiri do kuupaev=$(exif -m -t "Date and Time" $fail | sed -r -e "s/ /_/g")…'
 
Daddo (arutelu | kaastöö)
Resümee puudub
 
14. rida: 14. rida:
=Vaata ka=
=Vaata ka=
*[http://www.pingviin.org/fpost67744.html Algne küsimus foorumis]
*[http://www.pingviin.org/fpost67744.html Algne küsimus foorumis]
Kohandatud variant:
<source lang="bash">
#!/bin/bash
## koosta nimekiri jpg failidest
nimekiri=$(find -iname "*.jpg")
## käivitame tsükli $nimekiri sissekannete raames
for fail in $nimekiri
do
## loeme EXIF andmetest pildistamise aja kujul AAAA:KK:PP TT:MM ja pöörame selle kujule PP.KK.AA TT:MM
kuupaev=$(exif -m -t "Date and Time" $fail | sed -r "s/^([19|20]{2})([0-9]{2}):([0-9]{2}):([0-9]{2}) ([0-9]{2}):([0-9]{2}):([0-9]{2})$/\4.\3.\2 \5:\6/g")
## viime ühte sõnesse kokku kuupäev-kellaaeg, kausta nr ja faili nr. "Eemaldame" EOS5D/IMG_ reliktid tulevasest failiteest. Faililaiendi tähed langetame.
uusnimi="$kuupaev"_"$(echo "$fail" | sed -r -e 's/.\/DCIM\/([0-9]{3})[A-Za-z0-9\/]*_([0-9]{4})(.*)$/\1\2\3/' -e 's/JPG/jpg/')"
## Muudatuste kontrollkuva
echo $fail "->" $uusnimi
## Reaalne faili ümbernimetamine koos asukoha muudatusega. Eemalda # alles peale veendumist, et skript toimib vigadeta kujul:
## ./DCIM/345EOS5D/IMG_2293.JPG -> 29.05.10 14:16.24_3452293.jpg
# mv -v $fail $uusnimi
done
</source>

Viimane redaktsioon: 20. september 2011, kell 18:08

#!/bin/bash

nimekiri=$(find -iname "*.jpg")
for fail in $nimekiri
do
	kuupaev=$(exif -m -t "Date and Time" $fail | sed -r -e "s/ /_/g")
	uusnimi="$kuupaev"_"$(echo "$fail" | sed -r -e "s/(.*DCIM\/)([[:digit:]]*)([[:alpha:]]*\/IMG_)(.*)/\2\4/")"
	echo $fail "->" $uusnimi
#	mv -v $fail $uusnimi
done

Vaata ka


Kohandatud variant:

#!/bin/bash

## koosta nimekiri jpg failidest 
nimekiri=$(find -iname "*.jpg")

## käivitame tsükli $nimekiri sissekannete raames
for fail in $nimekiri
do	

## loeme EXIF andmetest pildistamise aja kujul AAAA:KK:PP TT:MM ja pöörame selle kujule PP.KK.AA TT:MM
	kuupaev=$(exif -m -t "Date and Time" $fail | sed -r "s/^([19|20]{2})([0-9]{2}):([0-9]{2}):([0-9]{2}) ([0-9]{2}):([0-9]{2}):([0-9]{2})$/\4.\3.\2 \5:\6/g")

## viime ühte sõnesse kokku kuupäev-kellaaeg, kausta nr ja faili nr. "Eemaldame" EOS5D/IMG_ reliktid tulevasest failiteest. Faililaiendi tähed langetame.
	uusnimi="$kuupaev"_"$(echo "$fail" | sed -r -e 's/.\/DCIM\/([0-9]{3})[A-Za-z0-9\/]*_([0-9]{4})(.*)$/\1\2\3/' -e 's/JPG/jpg/')"

## Muudatuste kontrollkuva
	echo $fail "->" $uusnimi

## Reaalne faili ümbernimetamine koos asukoha muudatusega. Eemalda # alles peale veendumist, et skript toimib vigadeta kujul:
## ./DCIM/345EOS5D/IMG_2293.JPG -> 29.05.10 14:16.24_3452293.jpg
#	mv -v $fail $uusnimi
done