python – paramiko中的管道命令

我如何在paramiko中运行管道命令?我这样做: –

statement = 'grep thing file | grep thing2 | tail -1'
last_msg = conn.execute(statement)

我只得到grep thing文件的输出.

最佳答案 因为grep不知道如何处理|.准备好一些讨厌的逃脱:

statement = """sh -c 'grep thing file | grep thing2 | tail -1'"""

这会在另一侧创建一个shell,并要求它解释字符串grep thing file | grep thing2 |尾巴-1.单引号是必要的,因为sh -c只接受一个参数.

这样,shell将为您创建管道,运行所有命令.最好确保文件名文件不包含空格.如果是,请尝试“文件”.

点赞