私はsftpファイルにJSchを使用しています。アップロード後、私はそのファイルのパーミッションを変更します。しかし、どのように所有者を変更するには?そこに私が見つけることができる良い例はありません。グループ:私はむしろ、所有者のための文字列よりも、整数を受け取り、あなたのような JSch SFTPを使用してチャーターする方法は?
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());
}
所有者がAdministratorであり、正しいです。しかし、グループはNoneであり、管理者でなければなりません。 UIDの入力のみがある場合、どのようにグループを変更しますか? – user3217883