Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Wywołuje jeden program wsadowy z innego bez zatrzymywania nadrzędnego programu wsadowego. Polecenie wywołania akceptuje etykiety jako element docelowy wywołania.
Uwaga / Notatka
Wywołanie nie ma wpływu na wiersz polecenia, gdy jest używane poza plikiem skryptu lub partii.
Składnia
call [drive:][path]<filename> [<batchparameters>]]
call [:<label> [<arguments>]]
Parametry
Parametr | Opis |
---|---|
[<drive>:][<path>]<filename> |
Określa lokalizację i nazwę programu wsadowego, który chcesz wywołać. Parametr <filename> jest wymagany i musi mieć rozszerzenie .bat lub .cmd. |
<batchparameters> |
Określa wszelkie informacje wiersza polecenia wymagane przez program wsadowy. |
:<label> |
Określa etykietę, do której ma przejść kontrolka programu wsadowego. |
<arguments> |
Określa informacje wiersza polecenia, które mają być przekazywane do nowego wystąpienia programu wsadowego, począwszy od :<label> . |
/? | Wyświetla pomoc w wierszu polecenia. |
Parametry wsadowe
Odwołania do argumentu skryptu wsadowego (%0, %1, ...) są wymienione w poniższych tabelach.
%* Użycie wartości w skrypcie wsadowym odnosi się do wszystkich argumentów (na przykład %1, %2, %3...).
Można użyć następujących opcjonalnych składni jako podstawień dla parametrów wsadowych (%n):
Parametr usługi Batch | Opis |
---|---|
%~1 | Rozwija %1 i usuwa otaczające znaki cudzysłowu. |
%~f1 | Rozwija %1 do w pełni kwalifikowanej ścieżki. |
%~d1 | Rozwija %1 tylko na literę dysku. |
%~p1 | Rozwija %1 tylko do ścieżki. |
%~n1 | Rozwija %1 tylko do nazwy pliku. |
%~x1 | Rozwija %1 tylko do rozszerzenia nazwy pliku. |
%~s1 | Rozwija %1 do w pełni kwalifikowanej ścieżki zawierającej tylko krótkie nazwy. |
%~a1 | Rozwija %1 do atrybutów pliku. |
%~t1 | Rozwija %1 do daty i godziny pliku. |
%~z1 | Rozszerza %1 do rozmiaru pliku. |
%~$PATH:1 | Wyszukuje katalogi wymienione w zmiennej środowiskowej PATH i rozwija %1 do w pełni kwalifikowanej nazwy pierwszego znalezionego katalogu. Jeśli nazwa zmiennej środowiskowej nie jest zdefiniowana lub plik nie zostanie znaleziony przez wyszukiwanie, ten modyfikator rozwija się do pustego ciągu. |
W poniższej tabeli przedstawiono sposób łączenia modyfikatorów z parametrami wsadowymi dla wyników złożonych:
Parametr usługi Batch z modyfikatorem | Opis |
---|---|
%~dp1 | Rozwija %1 tylko na literę dysku i ścieżkę. |
%~nx1 | Rozwija %1 tylko do nazwy pliku i rozszerzenia. |
%~dp$ŚCIEŻKA:1 | Wyszukuje katalogi wymienione w zmiennej środowiskowej PATH dla %1, a następnie rozwija się do litery dysku i ścieżki pierwszego znalezionego katalogu. |
%~ftza1 | Rozwija %1 , aby wyświetlić dane wyjściowe podobne do polecenia dir . |
W powyższych przykładach %1 i PATH można zastąpić innymi prawidłowymi wartościami. Składnia %~ jest przerywana przez prawidłowy numer argumentu. Modyfikatory %~ nie mogą być używane z %*programem .
Uwagi
Używanie parametrów wsadowych:
Parametry usługi Batch mogą zawierać wszelkie informacje, które można przekazać do programu wsadowego, w tym opcje wiersza polecenia, nazwy plików, parametry wsadowe %0 za pośrednictwem %9i zmiennych (na przykład %baud%).
Przy użyciu parametru
<label>
:Używając wywołania z parametrem
<label>
, należy utworzyć nowy kontekst pliku wsadowego i przekazać kontrolę do instrukcji po określonej etykiecie. Po pierwszym napotkaniu końca pliku wsadowego (czyli po przejściu do etykiety) kontrolka powraca do instrukcji po instrukcji wywołania . Po drugim napotkaniu zakończenia pliku wsadowego skrypt wsadowy zostanie zakończony.Używanie potoków i symboli przekierowania:
Nie używaj potoków
(|)
ani symboli przekierowania (<
lub>
) z wywołaniem.Wykonywanie wywołania cyklicznego
Można utworzyć program wsadowy, który wywołuje się samodzielnie. Należy jednak podać warunek zakończenia. W przeciwnym razie programy wsadowe nadrzędne i podrzędne mogą bez końca pętli.
Praca z rozszerzeniami poleceń
Jeśli rozszerzenia poleceń są włączone, wywołanie przyjmuje
<label>
jako element docelowy wywołania. Poprawna składnia tocall :<label> <arguments>
.
Przykłady
Aby uruchomić program checknew.bat z innego programu wsadowego, wpisz następujące polecenie w nadrzędnym programie wsadowym:
call checknew
Jeśli nadrzędny program wsadowy akceptuje dwa parametry wsadowe i chcesz przekazać te parametry do checknew.bat, wpisz następujące polecenie w nadrzędnym programie wsadowym:
call checknew %1 %2