Cambiar el nombre de los caracteres especiales del comando en el nombre del archivo

Cambiar el nombre de los caracteres especiales del comando en el nombre del archivo

Me gustaría eliminar [] en varios nombres de archivos. Me sale error al hacerlo con el comando cambiar nombre.

Hay otra manera de hacer esto?

Respuesta1

[]son caracteres especiales en la sintaxis de Perl Regex que se utiliza mediante renamecomando. Úselo \delante de ellos. Ejemplo:

rename "s/\[|\]/_/g" *

es decir:

s replace
[
| or
]
  with
_
* for all files here

Respuesta2

Prefiero usar este comando:

for file in $(echo *|grep -E '(\[|\])'); do mv $file $(echo $file|sed -r 's/(\[|\])/_/g'); done

Esto reemplazará todos los corchetes por guiones bajos en el directorio actual.

información relacionada