Como excluir parte de um nome de 195 arquivos diferentes em uma pasta?

2

Eu tenho 195 arquivos em outra pasta. Cada um deles tem uma combinação de números e letras entre colchetes [] na frente de sua descrição. Exemplo: [12hjk534m45] description .

É possível excluir os colchetes e seu conteúdo com um comando?

Eu esperava fazer isso com o comando rename e a sintaxe [abc] ?
Como seria esse comando?

    
por flap 12.12.2014 / 15:35

2 respostas

1

rename -n 's:^\[.*\](.*)::' *

[02Rarev]QgysLJF renamed as QgysLJF
[0rwCtGh]cGdxnWH renamed as cGdxnWH
[1B2CMhq]M91oPHh renamed as M91oPHh
[1BMD7N3]0nYVP0b renamed as 0nYVP0b
[1MjkCZu]WBPYXKG renamed as WBPYXKG
[2HoSmD7]aLWLmpf renamed as aLWLmpf

^\[.*\] corresponde do início ^ de arquivos para colchetes e tudo dentro de um par que é seguido por qualquer coisa (.*) . Então, com (.*) acabamos de capturar um grupo de qualquer coisa depois de colchetes que contém apenas a descrição dos arquivos, em seguida, na seção de substituição s/.../REPLACEMENT/ do comando rename Eu substituí todos os nomes de arquivos com parte de descrição usando back-referência do grupo capturado ( refere-se ao índice do primeiro grupo capturado (.*) ).

Você também pode usar renomear com a classe de caracteres correspondentes:

rename -n 's:^\[([0-9A-Za-z]*)\](.*)::' *

Como criar vários arquivos com nomes e extensões diferentes?

    
por αғsнιη 12.12.2014 / 16:25
0

Existe um programa realmente brilhante para fazer coisas como esta chamado GPRename, está no centro de software.

(Aqui estão informações sobre os comandos:

link

Parece que o que você quer está lá, mas você terá que descobrir ... ou simplesmente usar o GPRename!

grande explicação sobre isso aqui também: Como facilmente renomear arquivos usando a linha de comando? )

    
por Rabbit 12.12.2014 / 15:40