Source는 원격 서버에서 다운로드하려는 디렉터리이며 대상은 로컬 디렉터리입니다. 전체 디렉토리를 다운로드하는 데는 시간이 걸리므로 비동기 방식으로만 사용하는 것이 좋습니다 (스레드 만들기), 그러나 이것은 단지 권장 사항이며 코드를 풀 수 있습니다: 다음이 SFTP 클라이언트를 사용하여, 우리는 에 연결합니다 서버및 디렉토리의 내용을 재귀적으로 다운로드: 이제 다운로드 디렉터리 메서드를 정의합니다. 디렉터리 목록을 얻고 항목을 반복합니다. 파일이 다운로드되고 거기에있는 각 디렉토리에 대해, 우리는 재귀 다운로드 디렉터리 방법을 호출합니다 : 아래와 같은 패키지를 설치 한 후 SFTP 사이트에서 모든 파일을 다운로드하기 위해 작동합니다. 나는 상징적 인 링크를 무시하고 있기 때문에 다운로드하려고하면 실패하고 SftpFile 클래스는이 링크가 가리키는 것을 찾을 수있는 방법을 제공하지 않습니다. “.” 및 “..”도 무시됩니다. WinSCP에 대한 대안은 SSH.NET, 이는 다른 것들을 amoung, SFTP 사이트에서 파일을 다운로드 할 수있는 능력을 가지고있다. 3가지 방법을 사용하여 SFTP 서버에서 파일을 다운로드할 수 있습니다 SSH.NET. 전체 디렉토리 (하위 폴더 및 하위 파일)를 다운로드해야하는 경우 2 개의 함수와 그 중 하나를 만들어야합니다. 첫 번째 함수는 DownloadFile으로, 인수가 파일을 다운로드할 때 원격 디렉토리와 로컬 경로를 통해 사용할 수 있습니다.

두 번째 함수는 providen 디렉터리의 모든 파일을 나열하고 해당 파일을 반복하는 DownloadDirectory 메서드입니다. Respectively, if the item is a file then it will use the DownloadFile method to download it or if it`s a folder, then it will create it: To download a file you can use the SFTPClient.DownloadFile method and to write it locally using System.IO.File.OpenWrite method: It`s 매우 쉽게: 대상 파일에 파일 스트림을 만들고 SFTP 클라이언트의 DownloadFile 메서드를 사용 하 여 파일을 다운로드 합니다. 라이브러리 설치가 완료되면 문제없이 프로젝트에서 사용할 수 있습니다. 클래스 의 맨 위에 SshNet 형식을 포함하는 것을 잊지 마십시오 (당신이 그것을 사용하려는 곳) 및 다른 사람 : 응급 창 (또는 탭)에서 찾아보기 탭으로 이동하여 SSH.NET 검색합니다. 결과 목록에서 authro Renci에 의해 첫 번째 옵션을 선택 하 고 설치를 진행: WinSCP GPL 라이센스를 사용 하기 때문에 주위 GPL 라이센스 파일을 유지 하는 것이 중요 하다.1 귀하의 소프트웨어는 WinSCP .NET 어셈블리사용으로 GPL에서 라이센스가 없습니다. WinSCP는 라이브러리가 아닌 공용 스크립팅 인터페이스를 통해 실행 수로 사용됩니다. 어셈블리는 .NET 프레임워크 4.0 및 .NET 표준 2.0을 대상으로 합니다. 대용량 파일에 대한 메서드 간에는 성능 차이가 없어야 합니다(데이터 전송코드는 동일합니다). 프롬프트 “암호: ” 를 기다리고 암호라는 상수에 정의 한 암호를 보냅니다. 스크립팅 기능에 의해 제한되는 경우 스크립트를 WinSCP .NET 어셈블리를 사용하는 코드로 변환하는 것이 좋습니다. 사용법은 기본적으로 SFTP로 달성해야하는 가장 팁 작업을 달성 할 수있는 방법에 대한 많은 예제와 함께 표시됩니다 . 사용자의 편의를 위한 전체 코드: SFTPClient.ListDirectory 메서드를 사용하는 다음 코드 조각을 사용하여 디렉터리 의 내용을 나열할 수 있습니다.

프로그래밍 언어 및 개발 환경(예: JScript 및 VBScript, 응용 프로그램용 비주얼 베이직, 펄 및 파이썬과 같은 WSH 호스팅 활성 스크립팅 언어)