解决了
我有这个字符串:
' ServerAlias {hostNameshort}.* www.{hostNameshort}.*'.format(hostNameshort=hostNameshort)
但它一直给我一个语法错误。该行应该是这个 bash 等效项:
echo " ServerAlias ${hostOnly}.* www.${hostOnly}.*" >> $prjFile
请注意,第一个字符串是 myFile.write 函数的一部分,但这不是问题,我什至无法让字符串足够有意义,让我运行程序。
追溯:
File "tomahawk_alpha.py", line 89
' ServerAlias {hostNameshort}.* www.{hostNameshort}.*'.format(hostNameshort=hostNameshort)
^
但无论我如何更改该'
符号,它似乎都不起作用。我究竟做错了什么?
回应@mgilson:
myFile = open(prjFile, 'w+')
myFile.write("<VirtualHost 192.168.75.100:80>"
" ServerName www.{hostName}".format(hostName=hostName)
' ServerAlias {hostNameshort}.* www.{hostNameshort}.*'.format(hostNameshort=hostNameshort)
" DocumentRoot ", prjDir, "/html"
' CustomLog "\"|/usr/sbin/cronolog /var/log/httpd/class/',prjCode,'/\{hostName}.log.%Y%m%d\" urchin"'.format(hostName=hostName)
"</VirtualHost>")
myFile.close()
我在它自己的 myFile.write 行中有每一行,但它只产生第一行然后退出。所以我假设调用它一次并像这样间隔它会产生预期的结果。