Вот мой код
Код: Выделить всё
string hostname = "1.1.1.1";
string username = "test";
string password = "test";
string localFilePath = @"C:\test\";
string NasFolderPath = “I have no idea about this path”;
string remoteDestinationPath = "";
LogWriter.LogWrite("Dest: "+ localFilePath + ", Source: " +NasFolderPath);
try
{
using (var client = new SshClient(hostname, 22, username, password))
{
client.Connect();
LogWriter.LogWrite("connectClient");
var sftp = new SftpClient(client.ConnectionInfo);
sftp.Connect();
LogWriter.LogWrite("ConnectSFTP");
var files = sftp.ListDirectory(NasFolderPath);
LogWriter.LogWrite("ConnectFolder" + files);
foreach (var file in files)
{
LogWriter.LogWrite(file.ToString());
if (!file.IsDirectory)
{
LogWriter.LogWrite("HaveDirectory");
using (var fileStream = System.IO.File.Create(Path.Combine(localFilePath, file.Name)))
{
LogWriter.LogWrite("TryToCopyFile");
sftp.DownloadFile(file.FullName, fileStream);
LogWriter.LogWrite("File downloaded and moved successfully.");
}
}
}
sftp.Disconnect();
// Download the file
////Upload the file
//using (var fileStream = File.OpenRead("localFilePath"))
//{
// client.UploadFile(fileStream, "remoteDestinationPath", true);
//}
////Optionally, delete the source file
//client.DeleteFile("remoteFilePath");
client.Disconnect();
}
}
catch (Exception ex)
{
LogWriter.LogWrite($"An error occurred: {ex.Message}");
}
Я пробовал использовать
«sftp://» test@1.1.1.1/volume1/TestFile”
“sftp://test@1.1.1.1/volume1/TestFile/”
“1.1.1.1/volume1/TestFile”
“1.1. 1.1/volume1/TestFile/”
“sftp://test@1.1.1.1/TestFile”
“sftp://test@1.1.1.1/TestFile/”
“1.1.1.1 /TestFile”
“1.1.1.1/TestFile/”
“\1.1.1.1\TestFile\”
Но кажется, что все это возвращается с сообщением об ошибке “ такого файла нет»
Каков правильный путь для NasFolderPath?
Или в моем коде есть какая-либо другая ошибка?
Подробнее здесь: https://stackoverflow.com/questions/785 ... rp-program
Мобильная версия