Automator: переименовывать файлы, исправляя пробелы в числах 1,2,3,5,6 -> 1,2,3,4,5
У меня есть огромное количество отсканированных файлов (до OCR), и я хочу, чтобы Automator (Yosemite) исправлял пробелы в номерах файлов: некоторые страницы дублировались, и после удаления дублирования в нумерации были пробелы, например:
Scan1, Scan2, Scan3, Scan5, Scan6.
Мне нужно, чтобы Automator взял указанную папку с последовательной нумерацией в именах файлов и исправил эти пробелы.
Я пытался найти что-то подобное, но не получилось. Любые идеи будут высоко оценены.
1 ответ
Попробуйте этот пакетный сценарий Windows (вам нужно изменить "Scan! I! .Jpg" на то, что вам нужно, часть! I! Неизменна и рабочий каталог):
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
set i=1
cd C:\workdir
for /f %%f in ('dir /b .\') do (
echo renaming "%%f" to "Scan!i!.jpg"
ren "%%f" "Scan!i!.jpg"
set /A i=!i!+1
)
ENDLOCAL
set "i="
Это позволит переименовать все файлы в папке в последовательности, как
Scan1.jpg
,Scan2.jpg
,Scan3.jpg
,Вставьте его в блокнот и сохраните как файл .bat
Попробуйте сначала это на мусор и посмотрите, если это то, что вам нужно.
Вот решение для Bash:
#!/bin/bash
workdir=/home/user
i=1
for f in `ls $workdir`
do
echo renaming $f to "Scan$i.jpg"
mv $workdir/$f $workdir/Scan$i.jpg
i=$(($i+1))
done
Просто сохранить как script.sh
или что-то, chmod +x script.sh
и беги как ./script.sh
, Обязательно укажите правильный каталог и имя файла