Хорошо, у меня есть цифровая фоторамка, и я вижу свои фотографии с USB. Все работает нормально, однако нет возможности отображать картинки в случайном порядке. Поэтому я должен смотреть свои фотографии по порядку, что хорошо, но не совсем то, что я хочу.
Мне интересно, есть ли способ получить мои фотографии .jpg, которые я бы хотел переименовать в пакетном режиме, но переименовать случайно? Будь то добавление случайных символов в начале имени или замена символов перед .jpg
Спасибо за ваше время и ответы.
Сценарий, следующий за одной строкой, работает для имен файлов с белыми символами.
for f in *.jpg; do mv -n "$f" "${f/*/$RANDOM.jpg}"; done
Я полагаю, что следующее может работать. Предполагая, что префикс ваших имен файлов - «DSC», вы можете использовать следующую команду в терминале ( не проверено! )
cd /path/to/photos
rename 's/DSC/'$RANDOM'/' *.jpg
Используется команда perl rename для сопоставления регулярных выражений и замены их. В этом случае мы заменяем «DSC» случайным числом в имени файла для всех файлов .jpg. Измените "DSC" на префикс ваших фотографий.
другой метод (также не проверенный) с использованием bash-скрипта:
#!/bin/bash
for f in *.jpg; do
mv "$f" $RANDOM-"$f"
done
#!/bin/bash
for img in *.jpg; do
newname=$(head /dev/urandom | tr -dc a-z0-9 | head -c 8)
mv "$img" "$newname".jpg
done
Это перетасует все файлы jpg
на случайные имена.