Korzystanie z parametrów wsadowych
Zaktualizowano: 01/21/2005
Korzystanie z parametrów wsadowych
Parametrów wsadowych można używać w dowolnym miejscu w pliku wsadowym, aby wyodrębnić informacje dotyczące ustawień środowiskowych.
Program Cmd.exe zapewnia zmienne rozszerzeń parametrów wsadowych od %0 do %9. Podczas używania parametrów wsadowych w pliku wsadowym zmienna %0 jest zamieniana na nazwą pliku wsadowego, a zmienne od %1 do %9 są zamieniane na odpowiednie argumenty wpisane przez użytkownika w wierszu polecenia. Aby uzyskać dostęp do argumentów o numerach wyższych od %9, należy użyć polecenia shift. Aby uzyskać więcej informacji o poleceniu shift, zobacz Polecenie shift. Parametr wsadowy %* jest odwołaniem z symbolem wieloznacznym do wszystkich argumentów przekazywanych do pliku wsadowego z wyjątkiem %0.
Na przykład aby skopiować zawartość folderu Folder1 do folderu Folder2, gdzie zmienna %1 jest zamieniana na wartość Folder1, a zmienna %2 na wartość Folder2, należy wpisać następujące polecenie w pliku wsadowym o nazwie Mój_plik_wsadowy.bat:
xcopy %1\*.* %2
Aby uruchomić ten plik, należy wpisać:
mój_plik_wsadowy.bat C:\folder1 D:\folder2
Efekt tego polecenia jest taki sam, jak efekt następującego polecenia wpisanego w pliku wsadowym:
xcopy C:\folder1 \*.* D:\folder2
Z parametrami wsadowymi można także używać modyfikatorów. Modyfikatory używają informacji dotyczących bieżącego dysku i katalogu do rozwijania parametru wsadowego jako częściowej lub pełnej nazwy pliku lub katalogu. Aby zastosować modyfikator, należy wpisać znak procentu (%) i tyldę (~), a następnie wpisać odpowiedni modyfikator (tzn. %~modyfikator).
Poniższa tabela zawiera listę modyfikatorów, których można używać do rozwijania zmiennych.
|
|
Modyfikator |
Opis |
%~1 |
Rozwija zmienną %1 i usuwa zewnętrzne cudzysłowy (""). |
%~f1 |
Rozwija zmienną %1 do w pełni kwalifikowanej nazwy ścieżki. |
%~d1 |
Rozwija zmienną %1 do litery dysku. |
%~p1 |
Rozwija zmienną %1 do ścieżki. |
%~n1 |
Rozwija zmienną %1 do nazwy pliku. |
%~x1 |
Rozwija zmienną %1 do rozszerzenia nazwy pliku. |
%~s1 |
Rozwinięta ścieżka zawiera tylko krótkie nazwy. |
%~a1 |
Rozwija zmienną %1 do atrybutów pliku. |
%~t1 |
Rozwija zmienną %1 do daty i godziny pliku. |
%~z1 |
Rozwija zmienną %1 do rozmiaru pliku. |
%~$PATH:1 |
Przeszukuje katalogi wymienione na liście zmiennej środowiskowej PATH i rozwija zmienną %1 do w pełni kwalifikowanej nazwy pierwszego odnalezionego pliku. Jeżeli nazwa zmiennej środowiskowej nie jest zdefiniowana lub nie odnaleziono pliku, modyfikator rozwija zmienną do pustego ciągu. |
Następująca tabela zawiera listę możliwych kombinacji modyfikatorów i kwalifikatorów, których można używać, aby uzyskać złożone wyniki.
|
|
Modyfikator |
Opis |
%~dp1 |
Rozwija zmienną %1 do litery dysku i ścieżki. |
%~nx1 |
Rozwija zmienną %1 do nazwy pliku i rozszerzenia. |
%~dp$PATH:1 |
Przeszukuje katalogi wymienione na liście zmiennej środowiskowej PATH dla zmiennej %1 i rozwija zmienną do litery dysku i ścieżki pierwszego znalezionego pliku. |
%~ftza1 |
Rozwija zmienną %1 do wiersza danych wyjściowych, podobnie jak w przypadku polecenia dir. |
Uwaga
• |
W powyższych przykładach zmienne %1 i PATH można zamienić na inne wartości parametrów wsadowych. |
Modyfikator %* to unikatowy modyfikator reprezentujący wszystkie argumenty przekazywane w pliku wsadowym. Nie można go używać w połączeniu z modyfikatorem %~. Składnia %~ musi być zakończona prawidłową wartością argumentu.
Nie można manipulować parametrami wsadowymi w podobny sposób, jak manipuluje się zmiennymi środowiskowymi. Nie można wyszukiwać i zamieniać wartości lub sprawdzać podciągów. Można jednak przypisać parametr do zmiennej środowiskowej, a następnie nią manipulować.