Pseudo-terminal will not be allocated because stdin is not a terminal
我一直在使用上述类似的脚本。我登录远程设备,运行一些命令,然后注销。我使用telnet和ssh进行远程登录。到目前为止,所有命令都被回显到远程终端,输出被保存到一些日志文件中。我需要的是能够解释远程终端产生的输出。在通过SSH / Telnet成功登录后,请考虑发送到远程终端的命令:
echo“显示系统日期”
运行上面的命令后,我想将远程机器生成的输出存储在变量中并执行一些if / else语句。到目前为止,我没有取得任何成功。有人可以指导我如何将远程终端生成的输出保存在变量中吗?
答案 0 :(得分:2)
如果ansible是一个选项,您可以注册输出并根据它执行一些操作,例如:
- name: show system date
command: date
register: date
- debug: msg="{{ date.stdout }}"
您可以在此处详细了解ansible和条件:http://docs.ansible.com/ansible/latest/playbooks_conditionals.html