问题:
如何成功地将 sed 与 python 一起使用?我必须在远程服务器上运行此命令才能获取以逗号分隔的主机列表。当从 bash 运行时,我得到了我想要的东西,比如 host1、host2、host3
这是我所拥有的:
process = subprocess.Popen(["ssh $USER@mychefserver knife search node "chef_environment:*" | grep -i "node name" | egrep -i "stuff|ruff" | uniq -u | sort -n | cut -d ":" -f 2 | sed -e 's/^[ \t]*//' | tr '\n' ', '
"], shell=False, stdout=PIPE)
我知道我将不得不逃避 \n、\t 等,但我在其他方面遇到了麻烦。每当我尝试从我的 Python 脚本运行它时,我都会收到无效语法的错误,即使我已经尝试了很多转义。