たとえば、スクリプトの実行をバックグラウンドに置き、スクリプトを使用して実行しましたが、特定nohup
の&
ステップでスクリプトは現在の実行を続行できるように他のタスクを要求し、私が実行したタスクがあるかどうかを確認するように要求しました。 Enterまたは他のキーを入力してください。つまり、完了できます。これを行う方法はありますか?
答え1
あなたの明確な質問に答える
はい、コンソール対話をスクリプト化する方法があります。そこにはかなり多くのリソースがあります(https://core.tcl-lang.org/expect/index良い出発点のようです)。期待事項を見るこのトピックの良い本はLibes(ISBN 9781565920903)の本です。
特別な状況:ある場合単一キーボードで何かfoo
を入力するには(たとえば、 "")、次のいずれかの方法を使用できます(そして、この1つの操作についてのみExpectを学ぶ必要はありません!)。
/some/executable <<< 'foo'
script -c "echo 'foo'" /dev/null | /some/executable
- バラよりhttp://stackoverflow.com/a/20401674/4446565
答えは(のようである)あなたの暗黙的に質問
事前に回答を提供して問題を回避する方法はありますか?おそらく。作業中のツール可能非対話型実行はオプションです。そのようなオプションがありますが、気付かなかった場合に備えて、指示をよくお読みください。私は何か他のものを見つけるための非対話型実行オプションを見ました。
- 「首がない」
- 「非対話型」
- 「応答ファイル」
- 「静かな」
--assumeyes
--preconfig
-y
疑いなく、他の貢献者がより多くの例を提供することができます。