How to batch rearrange file names in OSX? -


i running osx yosemite.

i have batch of files named in format: xx-yyyab.txt

the xx variable numbers, yyy. 'a' , 'b' variable letters.

i rearrange file name yyy-xxab.txt can sort yyy component.

i in terminal - run on copy of files first in case clobbers something. make sure change directory files before run it.

save following file renamethem

#!/bin/bash # loop through files start digits, have dashes, , end in ".txt" f in [0-9]*-*.txt;do       # xx - leading digits before dash     xx=${f/-*/}      # yy - digits after dash     yy=$(sed -e 's/.*-([0-9]*).*/\1/' <<< $f)      # letters before ".txt"     zz=$(sed -e 's/.*[0-9](.*)\.txt/\1/' <<< $f)      # debug echo $xx, $yy, $zz      # remove word "echo" below actual rename     echo mv "$f" "${yy}-${xx}${zz}.txt" done 

then following once make executable

chmod +x renamethem 

then run typing

/.renamethem 

sample output

mv 12-345ab.txt 345-12ab.txt mv 333333-9999axrt.txt 9999-333333axrt.txt mv 45-3rm.txt 3-45rm.txt 

Comments

Popular posts from this blog

IF statement in MySQL trigger -

c++ - What does MSC in "// appease MSC" comments mean? -

javascript - Blogger related post gadget image Resize s72-c [ Need Expert Help ] -