是否有任何 C# 开源组件允许我通过 SFTP 删除文件?
问问题
7140 次
5 回答
1
尝试SharpSSH。
于 2009-07-22T20:49:46.473 回答
1
Tamir Gal 的Sharp SSH是非常流行的 SFTP for .NET 开源实现。试试看。
如果您喜欢完全支持的商业组件,可以试试我们的Rebex SFTP。以下代码说明了这个概念:
using Rebex.Net;
// create client and connect
Sftp client = new Sftp();
client.Connect(hostname);
client.Login(username, password);
// delete the file
client.DeleteFile("/path/to/the/file");
// disconnect
client.Disconnect();
于 2009-10-27T13:10:19.663 回答
0
您可以使用 OpenSSH 并发出 sftp 批处理命令。您在 c# 端所要做的就是使用正确的命令行启动 sftp 进程。
于 2009-07-24T18:22:26.263 回答
0
我一直在使用http://sshnet.codeplex.com/。它对我来说效果很好,并且正在积极开发/支持。
删除文件的代码很简单
public static void DownloadFile(SftpClient client, SftpFile remoteFileName)
{
var localFileName = System.IO.Path.GetFileName(remoteFileName.Name );
using (var file = File.OpenWrite(localFileName))
{
client.DownloadFile(remoteFileName.FullName , file);
remoteFileName.Delete();
}
}
于 2011-11-30T17:14:05.747 回答
0
使用对象 SshExec 执行 Linux 命令 rm。此命令删除文件。例子:
rm /dir1/dir2/file.txt
其他示例Tamir 执行命令
public static bool DeleteFile(string remotePath)
{
try
{
SshExec comando = new SshExec(Server, User);
comando.Password = Password;
comando.Connect();
string paso = comando.RunCommand("rm " + remotePath);
comando.Close();
return true;
}
catch (Exception ex)
{
mErrorSFTP = ex.Message;
return false;
}
}
于 2015-11-10T17:43:33.997 回答