Language/Python

[python] python으로 sftp 접속하는 방법

향식이 2022. 2. 23. 10:31

python으로 작업한 결과물을 서버에 업로드할 때 수동으로 하는 건 여간 귀찮은 일이 아니다.

그래서 라이브러리가 있나 찾아봤더니 역시나 python엔 없는게 없는지 paramiko이 라는 걸 발견했다.

 

이 라이브러리를 이용하면 코드만으로도 업로드 및 다운로드가 가능하다.

import paramiko

# ftp address
host = ""  # ftp 주소(IP 혹은 address)
port = 22 # sftp 포트번호는 22, ftp 포트번호는 21
transprot = paramiko.transport.Transport(host,port)
userId = "" # ID
password = “” # 있을 경우 PW

# ftp connect
transprot.connect(username = userId, password = password)
sftp = paramiko.SFTPClient.from_transport(transprot)

 

업로드, 다운로드 뿐만 아니라 디렉토리, 파일의 생성 및 삭제도 가능하다.

마지막엔 sftp.close()로 종료하는걸 잊지 말자!

 

localpath = ''
remotepath = ''

# sftp에 파일 복사
sftp.put(localpath, remotepath)

# 로컬에 파일 다운로드
sftp.get(remotepath, localpath)

# 디렉토리 생성
sftp.mkdir(path)

# sftp 종료
sftp.close()

 

다른 명령어를 알고 싶다면 이 사이트를 참고하도록:)

https://docs.oracle.com/cd/E37933_01/html/E36613/remotehowtoaccess-14.html#remotehowtoaccess-40629

 

원격 시스템에 로그인하여 파일 복사(sftp) - Oracle Solaris 11.1의 원격 시스템 관리

원격 시스템에 로그인하여 파일 복사(sftp) sftp 명령은 ftp와 유사한 사용자 인터페이스가 있는 대화식 파일 전송 프로그램입니다. 하지만 sftp는 SSH FTP(File Transfer Protocol)를 사용하여 서버에 대한

docs.oracle.com

 

반응형