renomeia o arquivo e salva o antigo e o novo nome no arquivo de saída

1

Estou usando

for i in *.jpg; do mv $i $(openssl rand -rand $i -hex 16).jpg; done

para renomear arquivos em um diretório.

O que preciso fazer é acompanhar a mudança de nome de nome antigo para novo. Então eu gostaria de produzir um arquivo de texto ou csv

Exemplo de arquivo csv ou txt de saída:

old_name, new_name
1234.jpg, 0dd4e436bd9482e8e679fa471aaf9b0e.jpg

adicionando o típico

>>output_file 

ou

| tee 

não está funcionando para mim neste loop for.

    
por glw 15.04.2017 / 00:28

1 resposta

2
echo "old_name, new_name" > output_file.csv
for old in *.jpg; do 
  new=$(openssl rand -rand "$old" -hex 16).jpg
  echo "$old, $new" >> output_file.csv
  mv "$old" "$new"
done
    
por 15.04.2017 / 01:07

Tags