bat脚本实现上传文件至Linux服务器

bat脚本实现上传文件至Linux服务器

说明

在日常开发、测试的过程中需要将本地的一些静态资源上传至Linux服务器,例如文件夹、jar、war、*.tar.gz等等。我们可以编写一个bat脚本快捷地将Windows机器上的资源上传至Linux服务器。

核心

  • 使用 pscp 可以上传文件和文件夹,可以满足从 Windows 远程拷贝文件到 Linux 服务。
  • 核心命令
    pscp.exe -r -l %user% -pw %pwd%  %source% %ip%:%target%
    
    -r 递归文件夹
    -l 指定用户名
    -pw 用户密码

具体步骤

  • 下载pscp.exe后,将其复制到C:\Windows\System32\文件夹下,这样在使用时,可以不用带上它的完整路径,可以直接使用;
  • 新建一个.bat文件;
  • 根据实际需求编写内容,实现具体功能;
  • 验证功能

我的

有啥不对的及时指正我
在这里插入图片描述
在这里插入图片描述

  • 指定目标资源存放的位置以及上传至服务器的位置,当然你也可以设置动态输入或选择;

  • 设置目标服务器信息(ip、user、pwd);

  • 根据实际需求编写内容

    • 选择发布环境 --> 选择发布项目 --> 检查资源存在 --> 确认上传 --> 启动其他应用完成后续操作;
    • 选择阶段输入非法则提示错误消息,可重新输入
    @echo off
    chcp 65001
    title 资源上传服务 v1.0.0
    COLOR 2
    set web_source=C:\Users\H5Publish\Desktop\H5\new.tar.gz
    set app_source=C:\Users\H5Publish\Desktop\H5\dist.tar.gz
    
    set web_pre_target=/home/test/workspace/WEB-H5-PRE
    set app_pre_target=/home/test/workspace/APP-H5-PRE
    set web_prd_target=/home/test//workspace/WEB-H5-PRD
    set app_prd_target=/home/test//workspace/APP-H5-PRD
    
    set ip=192.168.1.1
    set user=root
    set pwd=root
    
    :env1
    @echo.
    echo      选择发布环境
    set /p env="预生产(1) or 生产(2)     "
    
    if %env% NEQ 1 (
    	GOTO env2
    ) else (
    	GOTO project
    )
    :env2
    if %env% NEQ 2 (
    	echo 输入错误,重新选择!
    	GOTO env1
    ) else (
    	GOTO project
    )
    
    :project
    @echo.
    echo      选择发布项目     
    set /p project="WEB前端(1) or APP前端(2)     "
    if %project% NEQ 1 (
    	GOTO project2
    ) else (
    	GOTO chose
    )
    :project2
    if %project% NEQ 2 (
    	echo 输入错误,重新选择!
    	GOTO project
    ) else (
    	GOTO chose
    )
    
    :chose
    if %env%==1 (
    	if %project%==1 (
    		set source=%web_source%
    		set target=%web_pre_target%
    	)
    	if %project%==2 (
    		set source=%app_source%
    		set target=%app_pre_target%
    	)
    )
    if %env%==2 (
    	if %project%==1 (
    		set source=%web_source%
    		set target=%web_prd_target%
    	)
    	if %project%==2 (
    		set source=%app_source%
    		set target=%app_prd_target%
    	)
    )
    
    if exist %source% (
    	GOTO upload
    ) else (
    	@echo.
    	echo 目标文件不存在,请检查 【%source%】
    	pause
    	exit
    )
    
    :upload
    set /p agree="确认上传【%source%】? (Y/N)"
    if /i %agree% EQU Y (
    	TIMEOUT /T 3
    	pscp.exe -l %user% -pw %pwd%  %source% %ip%:%target%
    	echo 上传完成。。。
    ) else (
    	echo 告辞!!
    	TIMEOUT /T 2	
    	exit
    )
    
    pause
    set /p startchrome="启动GoogleChrome浏览器(Y/N)    "
    echo %startchrome%
    if /i %startchrome% EQU Y (
    	start /d "C:\Program Files (x86)\Google\Chrome Dev\Application\" chrome.exe
    ) else (
    	exit
    )
    
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值