2020년 8월 21일 금요일

SFTP Client

 안녕하세요.


libssh 라이브러리를 빌드 하다 SFTP 툴을 만들어 보자 시작하게 되어 Application을 하나 만들게 되었습니다.

기존에 많이 쓰는 프로그램 UI를 가져 오려고 하기 했는데 아직 추가 할게 많네요 ^^

프로그램 링크는 아래에서 다운로드 하시면 됩니다.

SFTP Client Download

프로그램을 설치 하시고 나면 아래와 같은 화면이 나옵니다.

"New Session"   : 새로운 SFTP 세션을 생성합니다.

"Used Session"  : 기존에 사용된 세션을 그룹 콤보 형태로 보여 줍니다.

"Open Session"  : 저장된 SFTP 세션을 다시 연결 합니다.

"Change Session": 저장된 SFTP 세션에 대한 정보를 변경하거나 삭제 합니다.


"New Session"을 눌러 새로운 SFTP 생성을 누르면 아내와 같은 생성 화면이 나오게 됩니다.

"Session Name" : SFTP 세션에 대한 별명을 입력합니다.

"Session Group": 세션을 그룹별로 관리 하기 위한 입력값이고 입력하지 않으면 "Default" 그룹으로 관리 됩니다.

"Address" : SFTP 주소를 입력합니다. (도메인 또는 IP4 아이피를 입력합니다.)

"User ID" : SFTP 로그인할 아이디를 입력합니다.

"User Passwd" : SFTP 패스워드를 입력합니다. 패스워드는 암호화 하여 저장은 하지만 저장은 추천하지 않습니다. ^^

"Base Path" : SFTP 세션의 기본 경로를 지정합니다. 지정하지 않을시에는 "/home/userid" 로 기본 지정합니다.


최소 입력값들을 입력하고 나면 아래와 같은 화면이 생성됩니다.

타이틀에는 별명:주소:포트:접속아이디가 표시됩니다.

보시면 아시겠지만 좌측은 로컬패스를 나타내고요 우측은 SFTP 패스의 내용을 나타냅니다.


각가의 뷰에는 입력가능한 경로 패스가 있습니다. 경로를 타이핑 하여 엔터를 누르면 해당 경로로 바로 이동 가능합니다.

툴바는 각각의 뷰에서 할수 있는 것들이 구현 되어 있습니다.

로컬패스에는

 - 업로드, 새로운폴더, 이름변경, 삭제, 상위패스로이동, 목록갱신, 복사

SFTP패스에는

 - 다운로드, 새로운폴더, 이름변경, 삭제, 상위패스로이동, 목록갱신, 복사


각각의 기능이 구현이 되어 있습니다.

로컬패스에서 마우스 우클릭시

아래와 같은 팝업 메뉴가 나타나게 됩니다.

팝업메뉴에 있는 단축키로도 기능을 처리 하실수 있습니다.

로컬뷰의 경우 복사/붙여 넣기는 윈도우 파일 매니져와 호환이 됩니다.

즉 윈도우 파일 매니져에서 파일을 복사해서 로컬패스에서 붙여 넣기를 하시면 파일 복사가 되며 반대로

로컬패스에서 파일을 복사한후 윈도우 파일 매니져로 붙여 넣기를 해도 동작을 동일하게 합니다.


SFTP패스에서 마우스 우클릭시

아래와 같은 팝업 메뉴가 나타나게 됩니다.

동일하게 팝업메뉴 있는 단축키로도 기능을 처리 하실수 있습니다.

윈도우 파일 매니져에서 파일을 복사한후 SFTP패스에서 "Upload Paste"를 호출 하시면 파일이 업로드 됩니다.

"Download Copy"는 윈도우 파일 매니져와는 호환이 되지 않고 현재 열려 있는 로컬 패스에 붙여 넣기를 할때

동작합니다.


추가로 SFTP패스에서 파일 복사 붙여 넣기를 개발하여 릴리즈 할 예정입니다.

Drag & Drop도 개발하여 릴리즈 할 예정입니다.


프로그램에 대한 기능 추가나 개선 사항을 댓글로 남겨 주시면 감사하겠습니다. ^^