如果我有一个Python脚本只是打印出第一个参数,那么
#!/usr/bin/env python
import sys
try:
print sys.argv[1]
except IndexError:
print "No args"
我可以运行它查找并获得预期的输出。现在,如果我编写一个只运行python脚本并回显其输出的Bash脚本。
#!/bin/bash
test="Test"
echo `python test.py`
然后bash脚本将成功回显" No args"。但是,如果我将第3行更改为
echo `python test.py $test`
然后我将简单地得到一个空字符串作为Bash脚本的输出,我不知道为什么。当我将其更改为
时,我甚至得到空字符串echo `python test.py "test"`
答案 0 :(得分:0)
将反引号更改为$()似乎已有效
答案 1 :(得分:0)
您应该尝试使用bash脚本文件:
python test.py $test
它将打印您的$ test变量内容。
我在没有反引号和回声的情况下调用Python脚本。我使用Bash / Python脚本组合工作很多,这对我很有用。