2016-04-11 12 views
-1

私は対話型のインストールプロセスを自動化するつもりです。このインストールには、サイレントインストールオプションはありません。また、対話型の質問に対してコマンドライン引数を使用しません。質問には、フォルダの場所を設定し、フォルダの場所が正しいかどうかを確認し、回答がデフォルトまたはカスタムになるようにします。 私はexpectのモジュールを調べましたが、それは私の目的を解決しないようです。可能性のある操作のpexpect種類

- expect: 
command: passwd username 
responses: 
    (?i)password: "MySekretPa$$word" 

私はコマンドは必要ありませんが、必須です。代わりに、Are you sure you want to continue [y|n]? [n]:のデフォルト値をBy sending return or typing n as a responseに送信し、応答がCarriage returnBackup directory [/tmp]のような正規表現を探しています。

答えて

0

私は私のために働く方法を考え出しました。手動で実行すると答えが必要なシェルスクリプトの引数をパイプで渡しました。 ./shell.sh <<< 'answer1\nanswer2\n'のように私にとって完璧に動作します。これは私がタスクに追加したものです。

1

私はコマンドは必要ありませんが、必須です。代わりに、私はAre you sure you want to continue [y|n]? [n]:

The moduleはRegex可能性が何かを探していますが、任意の出力を得るために何かを実行する必要があるためcommandが必要です。

あなたは手動で実行し、生成された出力を見たので、明らかにコマンドを念頭に置いてください。それがモジュールにプラグインする必要があります。

また、自分でpexpectスクリプトを作成し、commandまたはshellモジュールを使用して実行することもできます。

関連する問題