这是我的设置。运行 Python 2.7 代码的 Windows PC1 ----> 安装了 tcl 的 Windows PC2。
Windows PC1 和Windows PC2 通过局域网连接,可以相互访问。
现在我想使用 python 从 PC1 打开 PC2 的 CMD 行(作为管理员)并执行 windows 命令。是的,这可以通过 paramiko 来实现。
现在我想在 PC2 命令提示符下运行“tclsh”命令。在此之后,命令行进入 tcl 提示符 [%]。在这里我可以执行 tcl 命令,如 puts "Welcome"。因此,如果我尝试通过 paramiko 执行“tclsh”命令,它处于等待状态,因为提示已从 windows 提示更改为 %。
我的意图是通过 python [PC1] 在 tclsh 提示符 [PC2 cmd line] 中运行 tcl 命令。
示例:从 PC1 我想通过 python2.7 执行“将“Hello”放到 PC2 tcl 提示符下。
请建议我一些想法可以使用[python模块或任何其他方法]通过python 2.7访问tclsh提示符。
通过 paramiko,正常的 Windows 命令按预期工作,但 tclsh 进入 % 提示符,因此 paramiko 在这种情况下无法工作。
我想通过 python 2.7 远程访问 tcl 提示符。
我想通过python在远程系统的tclsh提示符下执行tcl命令。这是我尝试过的小程序。
host = '192.168.1.4'
user = 'lenovo'
passw = 'XXX'
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname=host, username=user, password=passw)
stdin, stdout, stderr = ssh.exec_command('tclsh')
print (str('.'.join(stdout.readlines())))
print (str('.'.join(stdin.readlines())))
print (str('.'.join(stderr.readlines())))
但是当 tclsh 进入新的 % 提示时,我没有看到任何输出。我该如何解决这个问题?在我可以访问 tclsh % 提示后,我想执行“ puts "Welcome" " 。如果给出 "hostname" windows 命令,我会得到回复,而不是 tclsh。