我通过Python脚本编写的qemu QGA命令是这样的:如何在python命令行中将此json字符串编写为param?
python cmd.py request:'{"execute": "guest-execute", "session": "4768", "arguments": {"commands": [{"command": "/bin/sh", "arguments": ["sh", "-c", "route | grep default | awk '{print $2}'"]}]}}'
但帕拉姆被解析成波纹管,其中devide从JSON字符串 '{打印$ 2}':
['cmd.py', 'request:{"execute": "guest-execute", "session": "4768", "arguments": {"commands": [{"command": "/bin/sh", "arguments": ["sh", "-c", "route | grep default | awk {print', '}"]}]}}']
实际我想这一点,这是awk {print'{print $2}'
shell命令在虚拟机中运行,而这种格式无法改变:
['cmd.py', 'request:{"execute": "guest-execute", "session": "4768", "arguments": {"commands": [{"command": "/bin/sh", "arguments": ["sh", "-c", "route | grep default | awk {print'{print $2}'}"]}]}}']
这可能吗?如果不可能,这意味着我必须在cmd.py中手动构建json字符串?
谢谢〜
您必须删除空格并为您的引号使用反斜杠。这样,你的整个json字符串将被视为只有一个参数。 – iFlo