C#의 한 원격 서버에서 다른 원격 서버로 대용량 파일 (20GB +)을 다운로드해야합니다. 우리는 이미 다른 파일 조작을 위해 ssh 연결을합니다. 바이너리 모드에서 ssh 세션으로부터 ftp 다운로드를 시작해야합니다 (이것은 특정 형식으로 파일을 전달하기위한 원격 서버 요구 사항입니다). 질문 - 자격 증명과 연결하고 모드를 'bin'으로 설정하기 위해 ssh 세션에서 ftp 명령을 보내려면 어떻게해야합니까? 사용하여 SSH를 다음의 기본적으로 해당 :C# - 한 원격 서버에서 다른 서버로 ssh를 통해 ftp를 사용하여 파일 다운로드
FtpWebRequest request =(FtpWebRequest)WebRequest.Create(
@"ftp://xxx.xxx.xxx.xxx/someDirectory/someFile");
request.Credentials = new NetworkCredential("username", "password");
request.UseBinary = true;
request.Method = WebRequestMethods.Ftp.DownloadFile;
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
귀하의 회신에 감사드립니다. 앞서 언급했듯이 우리는 이미 SSH (C# 서비스에서 유닉스 박스에 연결)를 사용하여 많은 파일 작업을 수행하고 있습니다. 원격 서버의 파일은 특정 자격 증명으로 ftp 연결을 만들 때만 필요한 형식으로 제공됩니다. sftp를 지원하지 않습니다. 대부분 ssh 명령 (ssh 연결은 웹 서비스에서 시작됨)에서 ftp를 사용하여 파일을 다운로드하기 위해 배치 파일을 실행하는 아이디어가 있습니다. – user1408552