Windows 95/98/NT FAQ

Как запустить командный файл с параметрами ?


Для этого запустите командный файл с параметром %1, %2 и т.д. Пример для hello.bat:

@echo hello %1 Harchenko

На выходе получим:

hello Andrey Harchenko

если вызывается файл "hello.bat Andrey" (не требуется вводить расширение .bat)

Также вы можете использовать следующие параметры:

Параметр  Описание
%1  Стандартный параметр
%~f1  Расширяет %1 до полного пути к файлу. Если вы только ввели имя файла, этот параметр расширит его включением драйва/директории
%~d1  Извлекает имя драйва из %1.
%~p1  Извлекает путь из %1
%~n1  Извлекает имя файла из %1 но без расширения
%~x1  Извлекает расширение файла из %1
%~s1  Изменяет длинное имя и расширение файла до стандартного 8.3 Используется как %~sn1 для короткого имени файла и как  %~sx1 для короткого расширения

Можно объеденить несколько параметров:

Параметр  Описание
%~dp1  Расширяет %1 только до имени драйва и пути
%~nx1  Расширяет %1 только до имени и расширения файла

Чтобы увидеть как все это работает, вставьте в командный файл testing.bat следующее:

@echo off
echo fully qualified name %~f1
echo drive %~d1
echo path %~p1
echo file name %~n1
echo file extension %~x1
echo short file name %~sn1
echo short file extension %~sx1
echo drive and directory %~dp1
echo file name and extension %~nx1

Запустите этот файл с файлом, имеющим длинное име и расширение. Например, для c:\temp\longfilename.long получите следующее:

fully qualified name c:\TEMP\longfilename.long
drive c:
path \TEMP\
file name longfilename
file extension .long
short file name LONGFI~1
short file extension .LON
drive and directory c:\TEMP\
file name and extension longfilename.long

Данный пример рассматривает параметр %~f1. Для всех последующих (%~f2, %~f3 и т.д.) все делается аналогично.


На первую страницу    Раздел Windows NT    Назад

Copyright © 2000. Andrey Harchenko. При перепечатке ссылка на http://WinFAQ.com.ru обязательна.
Авторские права на оригиналы статей: Microsoft Corporation, SavillTech Ltd, Simon Clausen