从Python运行WinSCP命令

发布于 2021-01-29 14:59:55

我创建了以下名称为的命令文件submitCmd.txt

open myname@ftpclients.myserve.com -privatekey=C:\Users\Mike\Desktop\uploader\mykey.ppk
put C:\Users\Mike\Desktop\uploader\files2Upload\myFile.xlsx /mnt/data/myFolder/
close
exit

当我从命令行运行上述脚本时:

winscp.com /script=C:\Users\Mike\Desktop\uploader\submitCmd.txt

它运行成功。

但是,当我在python中尝试以下操作时:

cmdFile = r'C:\Users\Mike\Desktop\uploader\submitCmd.txt'
import subprocess
subprocess.run(["winscp.com", "/script=", cmdFile], shell=True)

我得到错误:

Searching for host...
Host "C" does not exist.
winscp>
关注者
0
被浏览
142
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您的命令将像这样运行WinSCP:

    winscp.com /script= C:\Users\Mike\Desktop\uploader\submitCmd.txt
    

    什么是无效的语法。/script=。之后不能有空格。

    这应该工作:

    subprocess.run(["winscp.com", "/script=" + cmdFile], shell=True)
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看