Jenkins Windows Server系统的文件上传到Linux服务

一. 背景

    Java项目要求,通过 jenkins 把 maven 工程编译打包后的SpringBoot服务部署到另一台 Linux server上中。通过通过查找发现 Windows 10 使用 scp 命令。

dbcc916ef72f6e76435809b06640aeea.png

      但是,购买的windows Server 怎么看却没有发现这个命令。

二. 方案

    在网上搜到了一个 pscp 这个软件

https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

      这个软件和 putty是一家的,所以可以放心使用,pscp可以上传文件和文件夹,可以满足从 Windows 远程拷贝文件到 Linux 服务

具体步骤

  • 下载后,是一个exe文件pscp.exe,把pscp.exe直接复制到C:\Windows\System32下,这样在使用时,可以不用带上pscp.exe的完整路径,简单省事

  • 上传文件夹使用命令

pscp -r -l root -pw root D:\jenkins\com-omg\target 192.168.20.200:/root/com-omg

也可以上传文件

pscp -r -l root -pw root D:\jenkins\com-omg\target\com-omg-1.0.0.jar 192.168.20.200:/root/com-omg

参数:

  • -r 递归文件夹(上传时连子文件夹一起上传)

  • -l 指定用户名

  • -pw 用户密码

之后是需要上传的文件夹或文件名,最后是linux的 IP:目标文件夹

    如果没有错误(如用户名或密码不正确, 路径或文件不存在等)整个命令在 cmd 下执行就可以上传文件到 Linux 了。在使用时,一般把命令(有多个命令)写成一个批处理bat文件, 然后再 jenkins 里调用 bat;也可以在 jenkins的构建项目中写命令

2fcb6ded61304364ae7dfd33e00c271a.png

三. 问题

     第一次在 jenkins 执行上面的命令时会失败,提示需是否要缓存用户的登录信息。只要在 Jenkins 服务所在的 Windows 系统中打开 cmd 窗口执行一下 pscp 命令,上传任意一个文件到 Liunx 系统的任意目录,根据提示输入Y。把这个任意文件上传到 Linux系统之后,再去jenkins构建就不会在出现错误了。

42e7aff6817439cdc377cf13b02f94a1.png

分享&在看

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BUG弄潮儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值