VMWare仮想マシンにUbuntuをインストールしました。
VMWareツールのインストールを開始したときに、次の簡単な質問が見つかりました。
スクリプト(VMWareツールのPerlスクリプト)を実行している場合、デフォルト値がある場合に入力するように求められたら、実行を事前に知らせる方法はありますか?入力する?
答え1
yes
この目的のために設計されています。同じ文字列を標準出力に連続的に出力するので、それを別のスクリプトにパイプすることができ、すべてのプロンプトに対して同じ応答を維持します。デフォルトではy
、プロンプトに「はい」と答えることができますが、毎回改行のみを送信したい場合は、空の文字列をパラメータとして渡すことができます。
$ yes '' | vmware-script
答え2
デフォルト値を持つようにソースにパッチを適用するか、ここのドキュメントまたはここの文字列を使用して入力をスクリプトに送信しますstdin
。
./script << EOF
answer 1
answer 2
...
answer N
EOF
一部のプログラムではこれを許可しない場合があります(通常、認証を処理するプログラムではセキュリティのためにこの機能を無効にすることができます)。この場合、次のようなものを使用することを検討してください。expect
。