在面料

问题描述:

下载时如何维护权限如果我有这样的代码:在面料

import fabric.operations 
from fabric.api import settings  

def begin(): 
    with settings(host_string='blar', user='blar', password='blar'): 
      fabric.operations.get('/remote/file', '/local/file') 

如何维护文件传输过程中的权限,如果某些文件是可执行的,有些则不是?

你不能。您的本地文件将由发起结构脚本并遵守其umask的用户拥有。但是,您可以在下一个蟒蛇呼叫中更改它:)

+0

这就是我喜欢的明确答案。谢谢 :) – Fuhton 2012-08-09 01:43:55

就API而言,它似乎there's currently no way。奇怪的是,there's not even a feature request for this

+0

感谢您的信息。奇怪的是,您可以使用.put()选项,但不能使用.get()。谢谢! – Fuhton 2012-08-09 01:46:37

+1

我确定这是因为'put'比'get'更受欢迎,因为结构主要是一个部署工具。 – Tshepang 2012-08-09 16:18:59

+1

将所有内容打包成'.tar.gz'文件保留了权限。为我节省了一些麻烦和小带宽。我应该想象,但我不会像我应该那样经常使用Fabric。 – Fuhton 2012-08-09 18:48:55