Altere os nomes dos arquivos com find e iconv
Tentei alterar os nomes de arquivos usando o seguinte script:
find dir / -type f -exec mv {} $ (eco {} | iconv -f UTF8 -t ASCII // TRANSLIT) \;
Por que não funciona? Quero dizer, quando tenho um arquivo com caracteres como 'ą', ele deve ser convertido em 'a'.
$ echo ążźćó | iconv -f UTF8 -t ASCII//TRANSLIT
azzco
por que não funciona em find -exec?
$ find dir/ -type f -exec mv {} $(echo {} | iconv -f UTF8 -t ASCII//TRANSLIT ) \;
mv: `dir/zią' and `dir/zią' are the same file
Obtive os mesmos resultados usando xargs:
$ find dir/ -type f | xargs -I{} echo {} | iconv -f UTF8 -t ASCII//TRANSLIT
dir/zia
mas
$ find dir/ -type f | xargs -I{} mv {} $(echo {} | iconv -f UTF8 -t ASCII//TRANSLIT)
mv: `dir/zią' and `dir/zią' are the same file