バッチスクリプトでコンソールプログラムを起動したい。コンソールプログラムの起動は正常に機能します。経由で開始していcall xxx.exe para para
ます。問題は、コンソールプログラムが起動後にそのような入力を必要とすることです。
call xxx.exe para para
please type in password:_
バッチスクリプトからパスワードを入力することはできますか?
バッチスクリプトでコンソールプログラムを起動したい。コンソールプログラムの起動は正常に機能します。経由で開始していcall xxx.exe para para
ます。問題は、コンソールプログラムが起動後にそのような入力を必要とすることです。
call xxx.exe para para
please type in password:_
バッチスクリプトからパスワードを入力することはできますか?
バッチを使用しているかbashを使用しているかにかかわらず、当初のように、次の単純なパイプを試すことができます。
echo YourPassword| program.exe parameters...
実際にバッチ スクリプトである場合は、パスワードとの間に余分なスペースがないことを確認することが重要です。そうしないと、パスワードの一部として|
パスワードと共に渡されます。bash では、私があまり間違っていなければ、そのようなスペースは無視されます (または、エコーされた文字列を引用符で囲んだ場合にのみそうなるかもしれませんが、完全にはわかりません)。
いずれにせよ、一部のプログラムは、別のコマンドからパイプされた入力ストリームを無視する方法でパスワード読み取りを実装しているため、上記が常に機能するとは限りません。
質問に「Windows」と「バッチ」のタグを付け、質問で「バッチ」について尋ねました。その質問に対する答えは: はい、次のset
ように使用します。
set /p password=please type in password:
「bash」シェルについて本当に質問している場合は、質問にタグを付け直してください (そしてテキストを変更してください)。