我有一些像在bash脚本如下:在Bash中,一个here-document如何包含一个变量然后存储在一个变量中?
URL="${1}"
IFS= read -d '' code << "EOF"
import urllib2
from BeautifulSoup import BeautifulSoup
page = BeautifulSoup(urllib2.urlopen("${URL}"))
images = page.findAll('img')
for image in images:
print(image["src"])
EOF
python <(echo "${code}")
如何能在这里文档的定义方式(例如,不使用read
)来改变,使得可变${URL}
在这里的文件中得到解决然后这里的文件存储在变量${code}
?目前,here-document被成功存储在变量中,但这里的文档中的变量没有被解析。从EOF
我强烈建议将URL传递到'sys.argv'或'os.environ',而不是替换到脚本中 - 这就是代码注入漏洞。考虑一个包含'“+ __ import __('shutil')。rmtree('/')+”'的URL。 – 2014-12-02 17:22:44