如何从Cygwin中使用cp.exe并保留权限



我正在使用Cygwin的cp.exe来复制Windows 7中的文件。不幸的是,当我做文件的权限更改。

我试过使用:

cp --preserve=all

但这也不起作用,当我检查原始文件和副本的安全性时,副本具有不同的权限。

显然,在使用Cygwin复制时必须有一种方法来保留权限,但我找不到它。

我相信在/etc/fstab中为/cygdrive挂载点添加noacl选项会达到你想要的效果。

$ cat fstab
# For a description of the file format, see the Users Guide   
# http://cygwin.com/cygwin-ug-net/using.html#mount-table
# This is default anyway:
# none /cygdrive cygdrive binary,posix=0,user 0 0
none /cygdrive cygdrive binary,posix=0,user,noacl 0 0

参见http://cygwin.com/cygwin-ug-net/using.html#mount-table和cygwin邮件列表中的讨论

在问完上面的问题后,我做了更多的调查。

根据与Cygwin开发人员的讨论,Cygwin似乎并不关心Windows权限,而只是坚持POSIX权限。

据我所知,POSIX权限与Windows权限是完全不同的,所以是的,它们被支持是很好的,但最终,Cygwin不能复制文件并保持正常的Windows权限。让它对我毫无用处。使用Python或Ruby会更好。

我宁愿被证明是错的

最新更新