亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 Python Paramiko 通過 ssh/sftp 將文件復制到具有不同文件名的服務器

使用 Python Paramiko 通過 ssh/sftp 將文件復制到具有不同文件名的服務器

隔江千里 2023-05-23 10:52:51
我有c:\file_a.txt我想復制到的/home/the_user/file_b.txt。如果遠程文件已經存在,則替換它,如果不存在,則創建它。這是我的代碼:import jsonimport paramikofrom dotenv import load_dotenvfrom os import getenvfrom os.path import join, dirname, expanduserif __name__ == "__main__":    load_dotenv(join(dirname(__file__), ".env"))    ssh = paramiko.SSHClient()    ssh.load_host_keys(expanduser(join("~", ".ssh", "known_hosts")))    ssh.connect(getenv("SSH_SERVER"), username=getenv("SSH_USER"), \       password=getenv("SSH_PWD"), key_filename=getenv("SSH_KEY"))    sftp = ssh.open_sftp()    sftp.put("c:\file_a.txt", "/home/the_user/")    # my understanding is putting a file to a folder sets the working directory to that folder    sftp.rename("file_a.txt", "file_b.txt")    sftp.remove("file_a.txt")    sftp.close()    ssh.close()Failure但是我在重命名時遇到錯誤。感覺好像我遺漏了一些明顯的東西,不勝感激。如何使用paramiko中的庫通過 ssh/sftp/scp 將本地文件復制到具有不同文件名的遠程文件Python?
查看完整描述

1 回答

?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

所以將文件直接上傳到新名稱:

sftp.put("c:\file_a.txt", "/home/the_user/file_b.txt")


查看完整回答
反對 回復 2023-05-23
  • 1 回答
  • 0 關注
  • 213 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號