Na distribuição linux estão presentes dois utilitários rename
.
rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]
e
rename [options] expression replacement file...
No comando renomear do Ubuntu, siga a primeira sinopse, enquanto em outra distribuição linux, a sinopse do renomear é a segundo um.
No Ubuntu, tal rename
é rename.ul e se o terceiro parâmetro estiver faltando, ele retornará:
rename:not enough arguments
Eu acho que você não está usando o Ubuntu, em qualquer caso, tente isto:
find $katalog -name '*.dav.avi' -execdir rename .dav.avi .avi {} \;
Testado no lubuntu 12.04 com rename.ul
Em vez de rename
, você pode usar este script:
find . -name "*.dav.avi" | while read file; do newFile='echo $file | awk '{ print substr($0,1,match($0,"\[")-1) ".avi"; }''; mv $file $newFile; done