Udostępnij za pośrednictwem


zadzwonić

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 to call :<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