我需要使用SSH.NET
库来获取文件在sftp上复制的时间。但SftpFile
类仅在文件被访问和修改时返回(也可以选择以UTC返回时间戳)。但是我需要在sftp上复制文件时获取时间戳。以下是我已经试过:当使用SSH.NET库在sftp上复制文件时获取时间
using (var ssh = new SshClient(this.connectionInfo))
{
ssh.Connect();
string comm = "ls -al " + @"/" + remotePath + " | awk '{print $6,$7,$8,$9}'";
var cmd = ssh.RunCommand(comm);
var output = cmd.Result;
}
,但上面异常崩溃的代码。“指定的参数超出有效值的范围\ r \ n参数名:长度”在该行ssh.RunCommand(comm)
。有没有另一种方式来实现这个使用这个库?
关注
您的代码为我工作。 'remotePath'的确切值是多少?向我们展示异常调用堆栈。你使用的是什么版本的SSH.NET? –
您好Martin,它崩溃了,因为我用的用户没有权限运行ssh命令。在我更改了sftp服务器上的这个设置后,代码也为我工作。 –