我希望使用ansible自动化交互式安装过程。此安装没有静默安装选项,或者不为交互式问题提供命令行参数。问题涉及设置文件夹位置,确保文件夹位置正确等,其答案可能是默认或自定义。
我查看了ansible的<td>
<form method="post">
Enter four digit number/letter string <input type="text" name="name"
maxlength="4"> <input type="submit" />
</form>
</td>
<?php
if ($_POST ['name'] && $_POST ['name'] != "") {
$x = urldecode ( $_POST ['name'] );
} else {
$x = "not set";
}
echo "$x" . "<br/>";
?>
</td>
<td>
<?php
$x = urldecode ( $_POST ['name'] );
if (is_numeric ( $x )) {
if ($x % 2 == 0) {
return "It's even";
} else {
return "It's odd";
}
}
echo "$x";
?>
</td>
模块,但似乎并没有解决我的目的。
expect
我不需要命令,但它是必需的。相反,我正在寻找可以正则表达式- 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
,其响应将为Backup directory [/tmp]
。
答案 0 :(得分:1)
我不需要这个命令,但它是必需的。相反,我正在寻找可以正则表达式
的东西Are you sure you want to continue [y|n]? [n]:
The module需要command
,因为您必须运行某些内容才能获得任何输出。
你显然有一个命令,因为你已经手动运行它并看到它产生的输出。这就是你应该插入模块的内容。
或者,您可以自己编写pexpect脚本并使用command
或shell
模块运行它。
答案 1 :(得分:0)
我找到了一种对我有用的方法。我在shell脚本的参数中输入,当手动运行时需要答案。就像./shell.sh <<< 'answer1\nanswer2\n'
一样,对我来说非常适合。我已将此添加到任务中。