我正在使用JSch來訪問sftp文件。上傳後,我更改了文件的權限。但如何改變業主?我找不到有好的例子。我想如何使用JSch sftp chown?
chown Administrator:Administrators filename.exe
就像你在Linux會做,但JSch chown命令取整數,而不是業主的字符串:組。那是什麼樣的廢話?
下面是我的一些代碼
jSch = new JSch();
if (useKey) jSch.addIdentity(privateKey);
session = jSch.getSession(user, host, port);
if (!useKey) {
session.setPassword(pass);
session.setConfig("PreferredAuthentications", "password");
}
session.setConfig("StrictHostKeyChecking", "no");
session.connect(FTP_TIMEOUT);
channel = session.openChannel("sftp");
sftp = (ChannelSftp) channel;
sftp.connect(FTP_TIMEOUT);
sftp.put(fis,file.getName());
String permissions = "744";
int octal = Integer.parseInt(permissions,8); //jsh uses octal, not decimal
if (file.getName().endsWith(".exe")) { //make exe files executable
sftp.chmod(octal,file.getName());
sftp.chown(this-is-an-integer-not-a-string, file.getName());
}
店主是管理員,這是正確的。但是該組是None並且應該是Administrators。只有UID輸入時如何更改組? – user3217883