如何转换 755 之类的 chmod 值,使其适合 channelSftp setPermission(int permission, String path)?
我想不通。:(
编辑:这里说我想使用位掩码。但我也不确定如何做到这一点。 http://epaul.github.com/jsch-documentation/javadoc/com/jcraft/jsch/SftpATTRS.html#setPERMISSIONS(int )
如何转换 755 之类的 chmod 值,使其适合 channelSftp setPermission(int permission, String path)?
我想不通。:(
编辑:这里说我想使用位掩码。但我也不确定如何做到这一点。 http://epaul.github.com/jsch-documentation/javadoc/com/jcraft/jsch/SftpATTRS.html#setPERMISSIONS(int )
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
channelSftp.chown(0755, f.getName());
我知道它正在挖掘一个旧坟墓,但我有更好的解决方案 - SftpChannel.chmod 需要十进制整数,而 unix 格式(644、777 等)是八进制。您所要做的就是简单的转换:
SftpChannel.chmod(Integer.parseInt(""+, 8), path);