Renomeie arquivos com extensão específica e acrescente data no unix

1

Eu quero renomear os arquivos abaixo da seguinte maneira.

Original files : 
x.1.gz
y.1.gz

Renomeie para

x.dateTime.gz
y.dateTime.gz

Estou usando o seguinte script para fazer o mesmo. Mas está excluindo arquivos em vez de renomear.

for file in *.1.gz; do
    mv "$file" "$($(date +’%Y%m%d%H%M’) "$file" .1.gz).gz"
done
    
por KrunalParmar 16.04.2018 / 12:08

1 resposta

3

Você pode tentar o seguinte:

for i in *.1.gz; do mv "$i" "$(basename $i .1.gz).$(date +'%Y%m%d%H%M').gz"; done

basename extrairá a primeira parte do nome do arquivo.

Observe que o comando date está usando aspas simples ' e não o que você colocou em sua pergunta.

    
por 16.04.2018 / 12:59