【问题标题】:change directory owner in java在java中更改目录所有者
【发布时间】:2011-12-16 00:05:48
【问题描述】:

如何使用 API 更改 Windows 中目录的目录所有者可以处理 Java ?

【问题讨论】:

    标签: java windows winapi


    【解决方案1】:

    对于文件本身,这很容易,但对于目录,你不能(据我所知)通过 Java 来完成,因为它依赖于文件系统(例如 FAT、NTFS、HFS+、ext4 等。 )。对不起。

    以防万一您的意思是文件。

    来自Files.setOwner(File, UserPrincipal) 的 Java 文档:

    使用示例:假设我们想让“joe”成为文件的所有者:

    Path path = ...
    UserPrincipalLookupService lookupService =
        provider(path).getUserPrincipalLookupService();
    UserPrincipal joe = lookupService.lookupPrincipalByName("joe");
    Files.setOwner(path, joe);
    

    另请参阅 Java 教程的 Managing Metadata 部分。

    【讨论】:

      【解决方案2】:

      可能最容易使用 cacls.exe。这里还有一个有趣的讨论,也适用于编写 acls/owners:

      Reading Windows ACLs from Java

      编辑:实际上,cacls 不会处理所有权。这个更好:https://serverfault.com/questions/27332/how-to-take-ownership-of-files-from-the-command-line

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-09-28
        • 1970-01-01
        • 1970-01-01
        • 2014-03-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-06-07
        相关资源
        最近更新 更多