使用 expect 创建 Nessus 用户

问题描述

如何在不使用 Ansible 的情况下完成与此处 using ansible expect to create nessus user (nessuscli) 相同的操作? 我正在尝试以下但没有运气:

#!/usr/bin/expect -f

set timeout -5

spawn /opt/nessus/sbin/nessuscli adduser

expect "(.*)Login(.*):\r"

send -- "admin\r"

expect "(.*)Login password(.*)\r" send -- "password\r"

expect "(.*)Login password(.*)\r" send -- "password\r"

expect "(.*)system administrator(.*)\r" send -- "y\r"

expect "(.*)rules set(.*):\r" send -- "\n\r"

expect "(.*)ok(.*):\r" send -- "y\r"

expect eof

解决方法

您链接到的答案中的代码在 expect 匹配表达式中不包含 depends_on 序列,也没有 a more traditional example

因此,我怀疑通过从 \r 块中删除 \r 序列,您会得到更多:

expect