Bash command line tips
Hernoem een map bestanden op de prompt
Ik heb bijvoorbeeld een rijtje bestanden
paul@gaia:~/Downloads/Lakedistrict2011/zondag$ ls backup Zondag7645.JPG Zondag7686.JPG Zondag7700.JPG Zondag7642.JPG Zondag7666.JPG Zondag7691.JPG Zondag7714.JPG Zondag7644.JPG Zondag7668.JPG Zondag7694.JPG
Ik wil overal de Zondag7* hernoemen in 00Zondag*
for i in 200[0-9]-[0-9][0-9]-[0-9][0-9]; do newname=`echo $i|sed 's/Zondag7/00Zondag/g'`; mv $i $newname; done
Oplossing 2:
Het commando rename gebruikt regular expressions om bestanden ter hernoemen.
Om alle streepjes te veranderen in punten:
rename "s/\-/\./g" *
Om alleen te testen (parameter --no-action):
rename -n "s/\-/\./g" *
Oplossing 3:
for file in /path/to/*; do echo mv "$file" "${file/abc-two_/}"; done
Als dit werkt, verwijder de 'echo' en voer het uit.