2015-04-08 6 views
0

Мне было интересно, могу ли я получить некоторую помощь в отношении написания командного файла, который может принимать пользовательский ввод. (Или руководство, если пакетный файл не путь.)Создание динамического .bat-файла

Я обычно есть задача, которую я делаю, открыв CMD, перейдя к определенной папке и выполнив следующую команду

RDA -v 848 - i "C: \ me \ rda-tools-1.7.0.Ra1 \ Вход" -o "C: \ me \ rda-tools-1.7.0.RC1 \ Output"

Теперь эта задача повторяется, и единственное, что меняется каждый раз, - это число (848 в моем примере).

Можете ли вы посоветовать мне, как написать пакетный файл, который перемещается в определенную папку, спрашивает у меня, что это 3-значный номер для ввода, а затем запускает команду выше?

Обратите внимание: у меня очень мало знаний о пакетных файлах. Спасибо.

ответ

0

Вы можете передать параметры в пакетный файл. Они берутся последовательно, от %1 до %9 (вы можете использовать больше, но вы должны shift их, чтобы они могли использовать их). (Технически, есть %0 - это полный путь и имя файла самого пакетного файла.)

Например, поместите следующие в пакетный файл (например, RunRDA.bat):

@echo off 
rda -v %1 -i "C:\me\rda-tools-1.7.0.Ra1\Input" -o "C:\me\rda-tools-1.7.0.RC1\Output" 

Выполнить из командной строки с версией:

C:\RDA>RunRDA 848 

Для получения дополнительной информации см How to pass command line parameters to a batch file?

+0

Nice просто попробовал. Однако это означает, что я должен перейти к C: \ RDA каждый раз, когда я хочу это сделать. Есть ли способ иметь пакетный файл, дважды щелкнуть его, задать трехзначный номер и запустить команду? (т. е. нет навигации) EDIT - не означает, что звук ленив, просто нужно задействовать наименьшее количество ручных шагов, насколько это возможно. – HosseinK

+0

Это не вопрос, который вы задали здесь. :-) Ваш вопрос касался передачи параметров в командный файл из командной строки, на который я ответил. Если у вас теперь есть другой вопрос о том, как получить приглашение для информации из пакетного файла, сначала выполните поиск, чтобы узнать, задано ли здесь ранее; если нет, задайте новый вопрос, задав этот вопрос. –

+0

Конечно, спасибо за помощь Кен. Не знали, что последующие вопросы должны быть созданы как новые потоки. Сделаю! – HosseinK

Смежные вопросы