• winscp自动执行脚本


    我们经常使用WinSCP工具通过sftp协议上传获取文件,本文描述通过bat批量处理文件。

    首先,我们打开dos命令窗口使用 cd d :DWinSCP 打开WinSCP安装目录

    上传文件:

    winscp.exe /console /command "option batch continue" "option confirm off" "open sftp://user:pwd@ip:port" "option transfer binary" "put D:需要上传的文件路径 /服务器文件存放目录" "exit" /log=log_file.txt

    这里为了方便理解,一一解释。

    winscp421.exe /console /command     命令名
     "option batch continue"           默认批处理  
     "option confirm off"             关闭提示信息
    "open ftp://user:pwd@ip:port"  user:访问用户名 ,pwd:用户密码 ,ip:ip地址,port:端口号  默认22
    "option transfer binary"   使用二进制格式传送

    log=log_file.txt 日志文件地址
     "exit"                     ::执行完命令后退出 

    注意:以上 command 后的都为参数 需在一行体现  如想分开写 可把命令单独放到一个文件

    如:aa.txt

    option echo off
    option transfer binary
    open <sftp_or_ftp>://<user>:<password>@<host_ip>:<port> -privatekey <private_key_file>
    cd <remote_dir>
    put *.doc
    exit

    用命令执行该脚本:winscp /script=aa.txt /ini=<WinSCP.ini_location> /log=<log_file>
    如果需要配置传输参数,在WinSCP.ini配置,例如PreserveTime=0保持源文件的时间戳

    下载文件:

    一下是下载文件代码,同上传一样,如需单独写脚本可 用如上方式单独保存脚本执行。

    CD /d D:WinSCP
    winscp.exe /console /command "option batch continue" "option confirm off" "open sftp://root:root@10.168.38.72:22" "option transfer binary" "get /test.txt D:sftptest" "exit" /log=D:sftptestlog.txt

  • 相关阅读:
    思维发散的双刃剑
    一个请求过来都经过了什么?(Thrift版)
    业务开发转基础开发,这三种「高可用」架构你会么?
    程序常用的设计技巧
    美团分布式服务通信框架及服务治理系统OCTO
    《程序员修炼之道》解读
    面试官说:你真的不是不优秀只是不合适
    架构视角-文件的通用存储原理
    那些影响深远的弯路
    iOS sqlite ORM框架-LKDBHelper
  • 原文地址:https://www.cnblogs.com/ruiy/p/4939560.html
Copyright © 2020-2023  润新知