'|'出错在密码使用python脚本

时间:2013-09-01 16:11:06

标签: batch-file python-3.x

我创建了一个用于在服务器上存储变量的python脚本。

当我运行以下内容时,它正常运行

if server == '11':
    cmd1='p -ssh root@67.233.4.146 -pw "goorba12345"'
    os.system(cmd1)

运行正常,我可以打开服务器。此命令打开putty并将我登录到服务器上。

但如果密码有'|'然后它给了我错误:

if server == '11':
    cmd1='p -ssh root@67.233.4.147 -pw "||||||goorba12345"'
    os.system(cmd1)

'goorba12345'未被识别为内部或外部命令, 可操作程序或批处理文件。

我在Windows上并从此脚本打开putty会话。任何帮助都非常感谢。记住这将在DOS上运行命令。我试图使用bash转义序列^,但没有用。

2 个答案:

答案 0 :(得分:2)

' |'正在被操作系统解释,所以它试图将p命令的输出传递给goorba12345命令。你需要逃避' |'用' ^'字符:

cmd1='p -ssh root@67.233.4.147 -pw "^|^|^|^|^|^|goorba12345"'

答案 1 :(得分:1)

if server == '11':
    cmd1='p -ssh root@67.233.4.147 -pw "^|^|^|^|^|^|goorba12345"'
    os.system(cmd1)