Создать командный файл для переименования и перемещения файлов с помощью ввода пользователя - PullRequest
0 голосов
/ 01 августа 2011

У меня очень ограниченные знания о командах DOS (в основном это простые команды перемещения / копирования / удаления / переименования), и мне нужна помощь в создании командного файла, который выполняет следующие шаги:

  1. Предлагает пользователю ввести номер версии в поле ввода.

  2. Подтверждает ввод пользователя, чтобы убедиться, что он введен как основная версия, дефис, вспомогательная версия (например, 5-10)

  3. Выполняет поиск текущей папки, из которой запускается пакетный файл, и переименовывает все PDF-файлы, добавляя номер версии и жестко запрограммированное описание в этот файл.

    Например, исходный файл EMDM.pdf должен быть переименован в EMDM_5-10_Software Operations Manual.pdf (обратите внимание на подчеркивание до и после номера версии и пробелы в тексте описания)

  4. Переходит в \ webserver \ downloads и «ПЕРЕМЕЩАЕТ» PDF-файл в том месте, которое начинается с «EMDM» и заканчивается «Software Operations Manual.pdf» в \ webserver \ downloads \ supserseded

  5. После перемещения (резервного копирования) предыдущей версии PDF скопируйте недавно переименованный PDF-файл, который находится в той же папке, что и файл bacth, в \ webserver \ downloads

  6. После успешного перемещения переместите, удалите PDF-файл, который существует в той же папке, что и файл Bacth.

Спасибо заранее.

1 Ответ

2 голосов
/ 03 августа 2011
@echo off
:getversion
REM 1.
set /p VersionNumber=Enter the Version Number: 
REM 2.
for /f "tokens=1-3 delims=-" %%a in ("%VersionNumber%") do set Major=%%a& set Minor=%%b
REM 2.1 Revision of Version Number format
if not "%Major%-%Minor%" == "%VersionNumber%" goto getversion
REM 2.2 Revision of Major and Minor be numbers
set /a NMajor=Major, NMinor=Minor > NUL
if not "%NMajor%" == "%Major%" goto getversion
if not "%NMinor%" == "%Minor%" goto getversion
REM 3.
for %%a in (*.PDF) do ren "%%a" "%%~Na_%VersionNumber%_Software Operations Manual.pdf"
REM 4.
pushd \webserver\downloads
move "EMDM*Software Operations Manual.pdf" supserseded
REM 5.
popd
copy "EMDM*Software Operations Manual.pdf" \webserver\downloads
REM 6.
del "EMDM*Software Operations Manual.pdf"
REM Steps 5 and 6 above is the same as just one MOVE

Я изменил версию номера версии более простым способом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...