FTP file upload
대상 폴더 압축 후, ftp 로 전송하는 파이썬 코드입니다.
os.system
import os
cmd = 'ls -al'
os.system(cmd)
os 대신에, subprocess
를 사용합니다.
subprocess 사용
from subprocess import call
call(["ls", "-l"])
zip 사용
-r
옵션을 주는 경우 대상 폴더를 [폴더]/*
로 지정하면 에러 발생
전체 코드
#!/usr/bin/python
import os
import subprocess
import time
from ftplib import FTP
host = [host]
port = [port]
home_path = [home_path]
remote_path = [remote_path]
id = [id]
pw = [pw]
def archive():
date = time.strftime("%y%m")
file_name = 'dokuwiki_{}.zip'.format(date)
subprocess.call(['zip', '-r', file_name, './dokuwiki'], cwd=home_path)
return file_name
def store(file_path, file_name):
ftp = FTP()
ftp.connect(host, port)
ftp.login(id, pw)
ftp.cwd(remote_path)
os.chdir(file_path)
file = open(file_name, 'rb')
ftp.storbinary("STOR " + file_name, file)
file.close()
def main():
file_name = archive()
store(remote_path, file_name)
if __name__ == '__main__':
main()
'Programming > Python' 카테고리의 다른 글
Jupyter Lab CSS 변경 (0) | 2019.07.03 |
---|---|
BeautifulSoup 파싱이 뭔가 이상하다 (1) | 2019.06.07 |
Jupyter lab 에 익스텐션 설치하기 (0) | 2018.11.06 |
Amazfit Bip Font Creator 5 - 실행 파일 생성 (0) | 2018.05.15 |
Amazfit Bip Font Creator 4 - 폰트 생성 (0) | 2018.05.14 |
댓글