renomeia o arquivo múltiplo adiciona número ao nome usando lote

0

Eu tenho arquivos na pasta chamada unix_aaa.txt unix_bbb.txt unix_ccc.txt e assim por diante.

Como faço para alterar todos os arquivos que começam com unix para nomes como

001_unix_aaa.txt

002_unix_bbb.txt

003_unix_ccc.txt
    
por eathapeking 21.12.2012 / 07:45

2 respostas

1

Aqui está um script em lote (windows) que fará isso

setlocal enabledelayedexpansion
set n=1
for %%a in (unix_*.txt) do (
if !n! lss 10 (
ren "%%a" "00!n!_%%a"
) else (
if !n! lss 100 (
ren "%%a" "0!n!_%%a"
) else (
if !n! geq 100 (
ren "%%a" "!n!_%%a"
)
)
)
set /a n+=1
)
    
por 21.12.2012 / 10:17
1

Isto é para as conchas Bourne.

n=1; for f in unix*
do
    mv "$f" "'printf %03d $n'_$f"
    n=$((n+1))
done
    
por 21.12.2012 / 07:49