Putty(plink) - 在远程Linux服务器上执行Python

时间:2013-01-30 10:13:13

标签: python ssh putty plink

我有一个Ubuntu服务器,它有一个运行基于命令的终端接口的python脚本。我正在使用plink登录并立即执行python脚本:

plink.exe -ssh -l goomuckel -pw greenpepper#7 192.168.1.201 "python server.py"

但是,我收到以下消息:

TERM environment variable not set.

所以我在Ubuntu机器上创建了一个sh脚本(server.sh):

export TERM=xterm
python server.py

使用以下plink命令:

plink.exe -ssh -l goomuckel -pw greenpepper#7 192.168.1.201 "sh server.sh"

现在我不再收到警告了,似乎python脚本是执行的。但是,不是显示我在python脚本中打印的终端接口,而是仅打印以下字符:

←[H←[2J

奇怪的是,当使用Putty手动登录并执行python脚本时,一切正常。我已经尝试将-t标志添加到plink,然后脚本执行。但是我使用颜色打印终端文本,颜色打印为文本而不是改变Putty中观察到的文本颜色。

任何想法我能做什么?

2 个答案:

答案 0 :(得分:1)

您无需在python脚本中执行此操作。

您可以简单地修改.profile - 系统将在每次登录时执行的文件 - 使用与python脚本相同的表达式

export TERM=xterm

(如果你使用bash)

setnv TERM xterm

(对于c-shell和类似的)

答案 1 :(得分:0)

我遇到了同样的问题并在命令消除 TERM环境变量未设置之前设置了TERM变量。错误消息:

plink.exe -ssh -l goomuckel -pw greenpepper#7 192.168.1.201 "export TERM=xterm; python server.py"

如果您无法修改 .profile 文件,这很方便......