Распечатать имя файла с другим расширением (Batch-программа)

764
Simon Perepelitsa

Пакетная программа запускается с 1 параметром (полный путь к файлу)

program.cmd "C:\Path\To\File\Filename.txt" 

Теперь эта программа состоит из 1 команды:

echo %1 

И это просто печатает аргумент: C:\Path\To\File\Filename.txtдля верхнего примера.

Но я хочу, чтобы он печатал аргумент (полный путь) с другим расширением, например .exe. Для верхнего примера я хочу его напечатать C:\Path\To\File\Filename.exe.

Как заставить это сделать это?

0

2 ответа на вопрос

2
grawity
% ~ Dpn1.exe
Этот ответ работает, но он не особенно описательный. Использование магических переменных тильды будет `echo% dpn1.ext`, вы также можете сделать` echo% dpn1.% 2`, а затем использовать `changeext.bat foo.txt bar` и получить вывод` foo.bar` see: http://technet.microsoft.com/en-us/library/bb490909.aspx для магических ссылок на переменные. Tyler 14 лет назад 4
0
Jonno_FTW

В вашем program.cmd вы можете просто писать команды, как обычно используете их в командной строке.

Пожалуйста, прочитайте еще раз, я попытался объяснить более четко. Simon Perepelitsa 14 лет назад 0