我想在python脚本中编辑Apache2配置文件。我想在ServerAlias指令中添加或删除域名,以便脚本需要编辑特定文件并搜索以“ServerAlias”开头的行,并将特定域名追加或删除到该行。
我不知道怎么做,任何文档提示都会受到赞赏,我也在考虑使用子进程来使用像sed这样的bash工具。
答案 0 :(得分:1)
您可以将fileinput.input与inplace模式一起使用:
import fileinput
for line in fileinput.input("mifile", inplace=True):
if line.startswith("ServerAlias"):
line = doherewhatyouwant(line)
print line,
来自docs:
如果关键字参数inplace = True传递给fileinput.input()或 到FileInput构造函数,文件被移动到备份文件和 标准输出定向到输入文件(如果是相同的文件) 名称作为备份文件已存在,它将被静默替换)。 这使得编写重写其输入文件的过滤器成为可能 到位。如果给出备份参数(通常为 backup ='。'),它指定备份的扩展名 文件,备份文件仍然存在;默认情况下,扩展名是 '.bak'并在输出文件关闭时删除。到位 读取标准输入时禁用过滤。
答案 1 :(得分:0)
您的交易需要的几种工具
+
(字符串连接)