script para renomear arquivos [RESOLVIDO]

1. script para renomear arquivos [RESOLVIDO]

LINER DE SOUZA SANTOS
linersantos

(usa Ubuntu)

Enviado em 09/03/2020 - 10:46h

Bom dia.
tenho que fazer um script que renomeie os arquivos de uma pasta.
tenho uma pasta chamada lista em que há os seguintes arquivos:
50.dat
76.dat
900.dat
35.dat
86.dat
...
Preciso renomear esses arquivos em ordem crescente, ou seja
o 1o arquivo passa a se chamar 1.dat
o 2o arquivo passa a se chamar 2.dat
e assim por diante (tenho 1000 arquivos na pasta)
Desde já agradeço a atenção.



  


2. MELHOR RESPOSTA

Ryuk Shinigami
Ryuk

(usa Nenhuma)

Enviado em 09/03/2020 - 13:53h

Versão 2 (números com 4 dígitos):

#!/bin/bash
# Renomeia os arquivos com números crescentes.

pasta_origem="/tmp/teste"
pasta_destino="${pasta_origem}/renomeados"

if [ ! -d ${pasta_destino} ]; then
mkdir "${pasta_destino}"
fi

n="1"

for arq in `ls -1 -v ${pasta_origem}/*.dat` ; do
cp -i -v "${arq}" "${pasta_destino}/$(printf "%04d" ${n}).dat"
let n++
done


3. Re: script para renomear arquivos

Ryuk Shinigami
Ryuk

(usa Nenhuma)

Enviado em 09/03/2020 - 12:17h

Testaí:

#!/bin/bash
# Renomeia os arquivos com números crescentes.

pasta_origem="/tmp/teste"
pasta_destino="${pasta_origem}/renomeados"

if [ ! -d ${pasta_destino} ]; then
mkdir "${pasta_destino}"
fi

n="1"

for arq in `ls -1 -v ${pasta_origem}/*.dat` ; do
cp -i -v "${arq}" "${pasta_destino}/${n}.dat"
let n++
done



4. Re: script para renomear arquivos [RESOLVIDO]

LINER DE SOUZA SANTOS
linersantos

(usa Ubuntu)

Enviado em 09/03/2020 - 13:21h

Funcionou !!!
Soh mais um detalhe. Tem como fazer com que todos os arquivos tenham a mesma quantidade de algarismos no nome? Por exemplo
o 1o arquivo ser nomeado 0001.dat
o 2o arquivo 0002.dat
...
ate o ultimo ser 1000.dat






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts