2015-10-26 1 views
0

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

Так я закодирован его следующим образом:

set path = "c:\path_to_install_exe\" 

set installationfilepath=%cd% 

(это один дает, D: \ installation_file_path \ команды)

инсталляционный файл присутствует в указанном выше пути и я хочу, чтобы скопировать из моего текущего рабочего каталога

так я дал т он это

echo xcopy "%installationfilepath%\..\install.exe" "%path_to_install_exe%" 

Но это не делает необходимой операции. Я получаю d:\installation_file_path\commands..\install.exe в качестве выхода.

Может кто-нибудь, пожалуйста, помогите мне в этом, так как я новичок в командных сценариях файлов.

+0

** 1 **) Не рекомендуется менять переменную 'path', если она не нужна, и в этом случае вам она не нужна, вы используете'% path_to_install_exe% 'и' % installfilepath% 'переменные. ** 2 **) Попробуйте удалить «echo», который префикс команды 'xcopy'. –

+0

Не используйте пробелы при использовании команды SET. Пространство является частью переменной ** path **. Как уже указывал MC ND. Не используйте переменную% path%, так как она временно уничтожает переменную системного пути. – Squashman

ответ

0

Вы всегда можете использовать pushd и popd для изменения каталога, который принимает пакетный файл.

Как как

pushd C:\Users\Arescet\Desktop\ 
echo Hello world! > Hi.txt 
popd 

Создаст "Hi.txt" с 'Привет, мир!' независимо от того, где вы запускаете летучую мышь.

Для более коротких команд, вы лучше настройки другого файла, в списке default variables «пути» уже системной переменной, и было бы неразумно, чтобы изменить его, как указано «MC ND» ,

Для только один единый файл, вы лучше с copy command как это позволяет указать тип пути.

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