呼び出しcall

親バッチ プログラムを停止することがなく、別の 1 つのバッチ プログラムを呼び出します。Calls one batch program from another without stopping the parent batch program. 呼び出すコマンドは、呼び出しのターゲットとしてのラベルを受け付けます。The call command accepts labels as the target of the call.

注意

呼び出すも何も起こりません、コマンド プロンプトで、スクリプトまたはバッチ ファイルの外部で使用される場合。Call has no effect at the command prompt when it is used outside of a script or batch file.

このコマンドを使用する方法の例については、を参照してください。For examples of how to use this command, see Examples.

構文Syntax

call [Drive:][Path]<FileName> [<BatchParameters>] [:<Label> [<Arguments>]]

パラメーターParameters

パラメーターParameter 説明Description
[<Drive>:][][<Drive>:][] 呼び出そうとするバッチ ファイルの名前と場所を指定します。Specifies the location and name of the batch program that you want to call. FileNameパラメーターは必須であり、.bat または .cmd 拡張子必要があります。The FileName parameter is required, and it must have a .bat or .cmd extension.
<BatchParameters><BatchParameters> バッチ プログラムに必要なコマンドライン情報を指定します。Specifies any command-line information required by the batch program.
:<ラベル >:<Label> ラベルにジャンプするバッチ プログラムの制御を指定します。Specifies the label that you want a batch program control to jump to.
<引数 ><Arguments> バッチ プログラムは、以降の新しいインスタンスに渡されるコマンドライン情報を指定します : ラベル。Specifies the command-line information to be passed to the new instance of the batch program, beginning at :Label.
/?/? コマンド プロンプトにヘルプを表示します。Displays help at the command prompt.

バッチ パラメーターBatch parameters

バッチ スクリプトの引数の参照 ( %0%1,...) は、次の表に記載します。The batch script argument references (%0, %1, ...) are listed in the following tables.

% * スクリプトのすべての引数を参照をバッチで (たとえば、 %1%2%3...)%* in a batch script refers to all the arguments (for example, %1, %2, %3...)

バッチ パラメーターの置換として次のオプションの構文を使用することができます ( %n)。You can use the following optional syntaxes as substitutions for batch parameters (%n):

バッチのパラメーターBatch Parameter 説明Description
%~1%~1 展開 %1と削除を囲む引用符 ("")。Expands %1 and removes surrounding quotation marks (" ").
% ~ f1%~f1 展開 %1完全修飾パスにします。Expands %1 to a fully qualified path.
% ~ d1%~d1 展開 %1ドライブ文字のみにします。Expands %1 to a drive letter only.
% ~ p1%~p1 展開 %1のみのパスにします。Expands %1 to a path only.
% ~ n1%~n1 展開 %1のみのファイル名にします。Expands %1 to a file name only.
% ~ x1%~x1 展開 %1のみとファイル名拡張子。Expands %1 to a file name extension only.
% ~ s1%~s1 展開 %1短い名前のみを含む完全修飾パスにします。Expands %1 to a fully qualified path that contains short names only.
% ~ a1%~a1 展開 %1ファイル属性。Expands %1 to the file attributes.
% ~ t1%~t1 展開 %1ファイルの日時にします。Expands %1 to the date and time of file.
% ~ z1%~z1 展開 %1ファイルのサイズにします。Expands %1 to the size of the file.
% ~ $PATH: 1%~$PATH:1 PATH 環境変数で設定されているディレクトリを検索し、展開 %1見つかった最初のディレクトリの完全修飾名にします。Searches the directories listed in the PATH environment variable, and expands %1 to the fully qualified name of the first directory found. 環境変数の名前が定義されていないか、検索によって、ファイルが見つからないの場合は、空の文字列にこの修飾子が展開されます。If the environment variable name is not defined or the file is not found by the search, then this modifier expands to the empty string.

次の表は、複合結果のバッチ パラメーター修飾子を結合する方法を示しています。The following table shows how you can combine modifiers with the batch parameters for compound results:

バッチ パラメーター修飾子Batch Parameter with Modifier 説明Description
% ~ dp1%~dp1 展開 %1先ドライブ文字とパスのみです。Expands %1 to a drive letter and path only.
% ~ nx1%~nx1 展開 %1ファイル名と拡張子のみにします。Expands %1 to a file name and extension only.
%~dp$PATH:1%~dp$PATH:1 PATH 環境変数で設定されているディレクトリ %1、し、見つかった最初のディレクトリのパスとドライブ文字を展開します。Searches the directories listed in the PATH environment variable for %1, and then expands to the drive letter and path of the first directory found.
% ~ ftza1%~ftza1 展開 %1のような出力を表示する、 dirコマンド。Expands %1 to display output similar to the dir command.

上記の例では、 %1とパスは、その他の有効な値で置き換えることができます。In the above examples, %1 and PATH can be replaced by other valid values. %~構文は有効な引数の数で終了します。The %~ syntax is terminated by a valid argument number. %~で修飾子を使用することはできません * * %\* * *。The %~ modifiers cannot be used with **%\***.

注釈Remarks

  • バッチのパラメーターを使用します。Using batch parameters

    バッチ パラメーターは、コマンド ライン オプション、ファイル名、バッチのパラメーターを含むバッチ プログラムに渡すことができるすべての情報を含めることができます %0を通じて %9、および変数 (たとえば、 ボー % )。Batch parameters can contain any information that you can pass to a batch program, including command-line options, file names, the batch parameters %0 through %9, and variables (for example, %baud%).

  • 使用して、ラベルパラメーターUsing the Label parameter

    使用して呼び出すで、ラベルパラメーター、新しいバッチ ファイルのコンテキストを作成し、指定されたラベルの後のステートメントに制御を渡します。By using call with the Label parameter, you create a new batch file context and pass control to the statement after the specified label. 最初に、バッチ ファイルの末尾が検出された (つまりに移動した後、ラベル) 後のステートメントに制御が戻ります、呼び出すステートメント。The first time the end of the batch file is encountered (that is, after jumping to the label), control returns to the statement after the call statement. 2 回目のバッチ ファイルの末尾が検出された場合は、バッチ スクリプトが終了しました。The second time the end of the batch file is encountered, the batch script is exited.

  • パイプとリダイレクト文字を使用します。Using pipes and redirection symbols

    パイプを使用しないでください ( | ) とリダイレクト文字 ( < または > ) と呼び出すします。Do not use pipes (|) and redirection symbols (< or >) with call.

  • 再帰呼び出しを行うMaking a recursive call

    自身を呼び出すバッチ プログラムを作成することができます。You can create a batch program that calls itself. ただし、終了条件を提供する必要があります。However, you must provide an exit condition. それ以外の場合、親と子バッチ プログラムが無限にループことができます。Otherwise, the parent and child batch programs can loop endlessly.

  • コマンド拡張機能の使用Working with command extensions

    コマンド拡張機能が有効な場合呼び出す受け入れるラベル呼び出しのターゲットとして。If command extensions are enabled, call accepts Label as the target of the call. 正しい構文は次のとおりです。The correct syntax is as follows:

    call :\<Label> <Arguments>

Examples

を別のバッチ ファイルから Checknew.bat プログラムを実行するには、親バッチ プログラムで、次のコマンドを入力します。To run the Checknew.bat program from another batch program, type the following command in the parent batch program:

call checknew

親バッチ プログラムは 2 つのバッチのパラメーターを受け取り、Checknew.bat にこれらのパラメーターを渡すようにするの場合は、親バッチ プログラムで、次のコマンドを入力します。If the parent batch program accepts two batch parameters and you want it to pass those parameters to Checknew.bat, type the following command in the parent batch program:

call checknew %1 %2

その他の参照情報Additional references

コマンド ライン構文の記号Command-Line Syntax Key