Renomeia os caracteres especiais do comando no nome do arquivo

0

Eu gostaria de remover [] em vários nomes de arquivos. Eu recebo um erro ao fazer isso com o comando rename.

Existe outra maneira de fazer isso?

    
por user244823 05.02.2014 / 11:12

2 respostas

1

[] são caracteres especiais na sintaxe Perl Regex, que é usada pelo comando rename . Use \ na frente deles. Exemplo:

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

ou seja:

s replace
[
| or
]
  with
_
* for all files here
    
por user.dz 05.02.2014 / 12:14
0

Eu prefiro usar este comando:

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

Isso substituirá todos os colchetes por sublinhados no diretório atual.

    
por Frantique 05.02.2014 / 11:25