Enviado em 15/12/2017 - 23:19h
Boas pretendo remover acentos, espaços e coisas esquisitas dos nomes de todos os arquivos pdf que tenho num servidor.
Preciso de garantir duas coisas:
1-que todos os espaços são substituidos por underline ( _ );
2-Que não dá besteira e me apaga alguns ficheiros pdf;
Criei vários scripts, cada um com um método diferente:
Qual deles acham melhor?
Preciso de garantir duas coisas:
1-que todos os espaços são substituidos por underline ( _ );
2-Que não dá besteira e me apaga alguns ficheiros pdf;
Criei vários scripts, cada um com um método diferente:
for i in *.pdf
do
j=`echo "$i" | sed 'y/áÁàÀãÃâÂéÉêÊíÍóÓõÕôÔúÚçÇ/aAaAaAaAeEeEiIoOoOoOuUcC/'` # remover acentos dos caracteres de nomes de ficheiros
mv "$i" "$j"
done
for i in *.pdf
do
j=`echo "$i" | sed 's/[^A-Za-z0-9_.]//g'`
mv "$i" "$j"
done
text_to_ascii(){
echo "$(iconv -t "ASCII//IGNORE" <<< "$1")"
} #//end text_to_asci()
for filename in ./*
do
clean_filename="$(text_to_ascii "$filename")"
mv -iv "$filename" "$clean_filename"
done
# vai substituir todos os espacos por underline
rename -v 'y/ /_/' *.*
Qual deles acham melhor?