1

Я использую

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

переименовать файлы в каталоге.

Что мне нужно сделать, так это отслеживать изменение имени со старого имени на новое. Поэтому я хотел бы вывести текстовый или CSV-файл

Пример выходного файла CSV или TXT:

old_name, new_name
1234.jpg, 0dd4e436bd9482e8e679fa471aaf9b0e.jpg

добавив типичный

>>output_file 

или же

| tee 

не работает для меня в этом для цикла.

1 ответ1

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .