it-swarm-ja.com

DOSのBATchファイルに自動的に入力する方法

引数を要求するコマンドを実行したいのですが、このコマンドを実行するBATchファイルを実行してから、1秒間待ってから、引数を自動的に「書き込む」または「入力」することはできますか?ありがとう。

5
MacGyver

コマンドがstdinから読み取る場合:

echo some text| command

(echo some text& echo line two) | command

コマンドが具体的にコンソールから読み取る場合-できません。

9
user1686

CHOICEコマンドを使用すると、指定したタイムアウト後にデフォルトオプションを設定できます。

CHOICE [/C choices] [/N] [/CS] [/T timeout /D choice] [/M text]

Description:
    This tool allows users to select one item from a list
    of choices and returns the index of the selected choice.

Parameter List:
   /C    choices       Specifies the list of choices to be created.
                       Default list is "YN".

   /N                  Hides the list of choices in the Prompt.
                       The message before the Prompt is displayed
                       and the choices are still enabled.

   /CS                 Enables case-sensitive choices to be selected.
                       By default, the utility is case-insensitive.

   /T    timeout       The number of seconds to pause before a default
                       choice is made. Acceptable values are from 0 to
                       9999. If 0 is specified, there will be no pause
                       and the default choice is selected.

   /D    choice        Specifies the default choice after nnnn seconds.
                       Character must be in the set of choices specified
                       by /C option and must also specify nnnn with /T.

   /M    text          Specifies the message to be displayed before
                       the Prompt. If not specified, the utility
                       displays only a Prompt.

   /?                  Displays this help message.

   NOTE:
   The ERRORLEVEL environment variable is set to the index of the
   key that was selected from the set of choices. The first choice
   listed returns a value of 1, the second a value of 2, and so on.
   If the user presses a key that is not a valid choice, the tool
   sounds a warning beep. If tool detects an error condition,
   it returns an ERRORLEVEL value of 255. If the user presses
   CTRL+BREAK or CTRL+C, the tool returns an ERRORLEVEL value
   of 0. When you use ERRORLEVEL parameters in a batch program, list
   them in decreasing order.

Examples:
   CHOICE /?
   CHOICE /C YNC /M "Press Y for Yes, N for No or C for Cancel."
   CHOICE /T 10 /C ync /CS /D y
   CHOICE /C ab /M "Select a for option 1 and b for option 2."
   CHOICE /C ab /N /M "Select a for option 1 and b for option 2."

したがって、この場合は、CHOICE /T 10 /C ync /D y /M "Do you wish to proceed [yes]?"のように入力するだけで、10秒後に[はい]を選択するだけです。

2
zackrspv