2

他の人の bash スクリプト用の応答ファイルを作成したいと考えています。bash スクリプトを実行すると、ソフトウェアの初回インストール時に 5 つの質問が表示されます。

コマンドを使用しましたが、すべての質問にyes | ./script自動的に回答します。ただし、最後の質問についてはyesお答えしたいと思います。最初の 4 つの質問と5 番目の質問noに答える方法はありますか?yesno

4

4 に答える 4

4

この方法で回答を提供するか、ファイルから直接stdin

./script << EOF
yes
yes
yes
yes
no
EOF 

(スクリプトが期待するものに応じてyorを使用します。プログラムが機能するため、おそらく " " と " " だけで十分です)。yesynyes

より複雑なタスクについては、最終的にはExpect (ウィキペディアのページ)のようなものを使用することを検討できます。

于 2013-07-18T14:00:56.597 に答える
1

この基本的なトリックはあなたの場合にうまくいくかもしれません:

echo -e "y\ny\ny\ny\nn"          | ./script

また

echo -e "yes\nyes\nyes\nyes\nno" | ./script

ただし、スクリプトが入力ストリームを処理する方法によって異なります...

于 2013-07-18T14:00:53.597 に答える