Renomeando arquivos com caracteres especiais
Dica publicada em Linux / Comandos
Renomeando arquivos com caracteres especiais
Se um arquivo possui caracteres especiais, o unix tentará interpretá-los. Para renomear esses tipos de arquivos não basta um simples "mv" (pois o shell retornará um erro), isso terá que ser feito com o número inode do arquivo.
Por exemplo:
$ ls -i "facina(unix)"
(o "-i" exibirá o número inode do arquivo -> 69734 facina(unix) )
O inode para esse arquivo é "69734".
Uma vez que o inode foi identificado, utilize o comando "find" para renomear o arquivo:
$ find . -inum 69734 -exec mv \{\} NewName \;
Depois "ls" novamente, a fim de verificar o arquivo.
Alguns podem dizer:
- Mas é mais fácil utilizar o mv com o nome do arquivo entre aspas (para quem utiliza o bash)
OK, mas lembre-se, nem todos os shells possuem essa facilidade. =)
André Facina
Por exemplo:
$ ls -i "facina(unix)"
(o "-i" exibirá o número inode do arquivo -> 69734 facina(unix) )
O inode para esse arquivo é "69734".
Uma vez que o inode foi identificado, utilize o comando "find" para renomear o arquivo:
$ find . -inum 69734 -exec mv \{\} NewName \;
Depois "ls" novamente, a fim de verificar o arquivo.
Alguns podem dizer:
- Mas é mais fácil utilizar o mv com o nome do arquivo entre aspas (para quem utiliza o bash)
OK, mas lembre-se, nem todos os shells possuem essa facilidade. =)
André Facina