如何在java中设置chmod权限jsch channelsftp setPermission(int permission,String path)

时间:2012-09-25 11:55:05

标签: java sftp jsch

如何将chmod值转换为755,以便它适合channelSftp setPermission(int permission,String path)?

我无法理解。 :(

编辑: 在这里它说我想使用位掩码。但我不确定如何做到这一点。 http://epaul.github.com/jsch-documentation/javadoc/com/jcraft/jsch/SftpATTRS.html#setPERMISSIONS(int

3 个答案:

答案 0 :(得分:3)

Permission perm = new Permission();
//set the permissions you want.
setPermission(perm.getDecimalCode(), path);

您可以从此处获取Permission类:

http://svn.cyberduck.ch/tags/release-2-3/source/ch/cyberduck/core/Permission.java

答案 1 :(得分:0)

我知道它正在挖掘一个旧坟墓,但我有更好的解决方案 - SftpChannel.chmod期望十进制整数,而unix格式(644,777等)是八进制。您所要做的就是简单转换:

SftpChannel.chmod(Integer.parseInt("" +,8),路径);

答案 2 :(得分:0)

channelSftp.chown(0755, f.getName());