Итак, я преподаю в классе, и у нескольких моих учеников есть Mac. Буквально единственное, с чем я столкнулся, это проблема с .bat.
Мы используем Excel, чтобы начать со списка имен файлов в одном столбце и списка новых имен файлов в другом столбце, а затем создать файл bat. Новые имена не интуитивно понятны и не следуют шаблону, поэтому обычная логика не может с этим справиться; мы должны полагаться на список.
У Mac есть что-то, что может работать? Я хотел бы предоставить решение.
Вот как это выглядит в винде (предполагается, что все файлы находятся в одной папке, а bat-файл запускается из корня, так же можно использовать полные пути)
rename accounting2016.xls ID0001.xls
rename vacationphoto01.jpg ID0042.jpg
rename BuildingPlans.docx ID0189.docx
Если я правильно прочитал вопрос, вы создаете пакетный файл из какого-то процесса экспорта из столбцов Excel, содержащих команду и два имени файла?
В таком случае вы можете просто изменить rename
команду на «эквивалент Mac» mv
. Теперь файл содержит
mv accounting2016.xls ID0001.xls
mv vacationphoto01.jpg ID0042.jpg
mv BuildingPlans.docx ID0189.docx
Затем вы можете запустить команды, перечисленные в файле, например, с помощью Bash:
bash renames.txt
Обратите внимание, что если имена файлов содержат пробелы или другие специальные символы, вы должны заключать их в кавычки, но я думаю, что это также относится и к Windows.
Инструменты командной строки Unix — это то, что вам нужно, и вы или пользователи Mac в вашей группе должны изучить некоторые основные учебные пособия по этому вопросу. Его часто называют программированием оболочки.
Здесь вам нужна команда mv
(сокращение от move). Сценарий оболочки, который вы сгенерируете (эквивалент командного файла), будет включать
mv accounting2016.xls ID0001.xls
mv vacationphoto01.jpg ID0042.jpg
mv BuildingPlans.docx ID0189.docx
Обратите внимание, что это точное совпадение, если вы не используете подстановочные знаки. Подстановочные знаки обрабатываются по-разному в командных файлах Windows и оболочках Unix, есть несколько вещей, которые вы можете сделать только с первыми. Это связано с тем, что расширение подстановочных знаков выполняется командой переименования в Windows и оболочкой в Unix.
sh filename
jqning
Джава
renames.txt
, ), открыв окно терминала и выполнив командуbash renames.txt
в каталоге, где находится файл — точно так же, как в Windows. Затем Bash считывает отдельные команды из файла строка за строкой, выполняя их одну за другой.