是否可以在本地文件上使用fabric.contrib.files.append()?

时间:2013-06-21 23:49:21

标签: fabric

尝试使用Fabric将<()附加到本地文件。

我想用

append('/etc/ssh_config', ['\n\nHost', '\n\tIdentityFile', '\n\User'])

但不幸的是它只尝试远程文件

尝试将append包装在local()中,如下所示:

local(append('/etc/ssh_config', ['\n\nHost', '\n\tIdentityFile', '\n\User']))

......悲惨地失败了。

1 个答案:

答案 0 :(得分:5)

不要相信。

如果你查看source code for append它在循环中循环,则转义该行中的任何正则表达式,如果该行未基于egrep检查存在于文件中,它会执行{{{ 1}} 应该可以将所有这些包装在一个三引号的shell片段中,然后传递给echo line >> file