Jenkins结合.net平台之ftp客户端
上一节我们讲解了如何配置ftp服务端,本节我们讲解如何使用winscp搭建ftp客户端,为什么使用winscp而不是filezilla客户端版,前面我们简单说过,这里不再赘述.
下载winscp以后我们点击下一步直到安装完成,这里并没有什么需要注意的.
安装完成以后我们并不打开winscp因为我们需要自动化操作,图形化操作几乎无法完成自动化.我们对着winscp桌面图标右击,选择-属性,然后从属性里打开文件所在位置,你将会看到如下类似内容

这个目录下的WinSCpnet.dll为.net平台编程提供了接口,我们使用此dll编写一个powershell脚本,以实现自动化部署.
我们编写好的powershell脚本内容如下(会提供在github上)

我对以上文件进行的简单注释,以方便理解.
看完以上配置以后,有的读者可能会纳闷这里的用户名,密码是哪来的呢.答案是我们在FileZilla服务器上配置的.下面我们讲一下FileZilla服务器如何配置用户
我们打开FileZilla server点击上方工具栏小人图标

会出现以下窗口

我们点击Add按钮,便可以添加一个用户了.

我们在弹出的添加用户账户框中输入用户名
点击确定以后返回主界面,此时我们勾选,password,便可以添加用户密码

我们点击Shared folders会出现下面对话框

此时右边选中的users中高亮的为刚才创建的typer用户,我们点击上图红色框选的add按钮,为这个用户添加可以操作的文件夹
选择文件夹后,我们勾选以下权限

默认权限为读,如果不勾选写,则无法创建文件和文件夹,也就无法发布了.
然后我们点击左下角ok按钮,完成创建

打开jenkins,我们新建一个名为uploadtoftp的项目,这次在add build step里选择windows powershell,注意你没有安装powershell插件,则无法看到此选项,关于安装powershell Jenkins插件,前面我们讲到过,略过的朋友可以参考一下.
在命令栏里输入以下命令

这个ps1脚本提供在了github上的示例项目里,目录和上图中对应目录相同,在toos目录下.
需要特别说明的是,句首的&符号是必不可少的,它用于指示powershell后面的文本为一个命令,而不是普通的文本,如果没有&符,则后面的内容会被当作文本处理!
点击save,然后执行build now,如果配置没有问题,则会生成一条成功构建记录
点击此构建记录,查看console out控制台输出,内容如下

可以每个文件上传都生成了一个成功日志文件.
打开iis web目录(我们在前面配置的当前上传用户的上传目录)
注.filezilla server和winscp安装程序都提供在git示例项目的tools目录下.
Jenkins结合.net平台之ftp客户端的更多相关文章
- Linux FTP客户端
1.File Zilla File Zilla是一个开源的,跨平台的Linux FTP客户端.File Zilla有一个标签式的用户界面,允许用户查看正在传输的文件的所有细节.File Zilla是通 ...
- 使用 Socket 通信实现 FTP 客户端程序(来自IBM)
FTP 客户端如 FlashFXP,File Zilla 被广泛应用,原理上都是用底层的 Socket 来实现.FTP 客户端与服务器端进行数据交换必须建立两个套接字,一个作为命令通道,一个作为数据通 ...
- 【转载】HTTP/FTP客户端开发库:libwww、libcurl、libfetch
网页抓取和ftp访问是目前很常见的一个应用需要,无论是搜索引擎的爬虫,分析程序,资源获取程序,WebService等等都是需 要的,自己开发抓取库当然是最好了,不过开发需要时间和周期,使用现有的Ope ...
- 使用Socket通信实现FTP客户端程序
FTP 客户端如 FlashFXP,File Zilla 被广泛应用,原理上都是用底层的 Socket 来实现.FTP 客户端与服务器端进行数据交换必须建立两个套接字,一个作为命令通道,一个作为数据通 ...
- ftp 客户端 上传
ps: 1.使用netkit-ftp-0.17交叉编译出来的ftp客户端, 2.然后写上传代码,调用ftp传服务器: 3.最好使用bin二进制文件形式传输: 4.ftp客户端和Ubuntu自带的ftp ...
- 【转】Linux环境搭建FTP服务器与Python实现FTP客户端的交互介绍
Linux环境搭建FTP服务器与Python实现FTP客户端的交互介绍 FTP 是File Transfer Protocol(文件传输协议)的英文简称,它基于传输层协议TCP建立,用于Interne ...
- Socket网络编程--FTP客户端
Socket网络编程--FTP客户端(1)(Windows) 已经好久没有写过博客进行分享了.具体原因,在以后说. 这几天在了解FTP协议,准备任务是写一个FTP客户端程序.直接上干货了. 0.了解F ...
- ftp客户端命令使用简记
OS:windows8.1评估版 程序和功能 tftp客户端勾选上 Win+R:运行,键入cmd,键入ftp -help 如下图: 使用ftp客户端可以做的事:将文件传送到运行FTP服务器服务(经常称 ...
- Socket网络编程--FTP客户端(1)(Windows)
已经好久没有写过博客进行分享了.具体原因,在以后说. 这几天在了解FTP协议,准备任务是写一个FTP客户端程序.直接上干货了. 0.了解FTP作用 就是一个提供一个文件的共享协议. 1.了解FTP协议 ...
随机推荐
- 引用Excel控件时,无法嵌入互操作类型“Microsoft.Office.Interop.Excel.ApplicationClass”请改用适用的接口
类型Microsoft.Office.Interop.Excel.ApplicationClass未定义构造函数 无法嵌入互操作类型“Microsoft.Office.Interop.Excel.Ap ...
- 201771010118 马昕璐《面向对象程序设计java》第十二周学习总结
第一部分:理论知识学习部分 用户界面:用户与计算机系统(各种程序)交互的接口 图形用户界面:以图形方式呈现的用户界面 AET:Java 的抽象窗口工具箱包含在java.awt包中,它提供了许多用来设计 ...
- 用gulp-imageisux智图api压缩图片
➣ 智图平台是什么? 智图是腾讯ISUX前端团队开发的一个专门用于图片压缩和图片格式转换的平台,其功能包括针对png,jpeg,gif等各类格式图片的压缩,以及为上传图片自动选择最优的图片格式.同时, ...
- cf 744D
一开始没看懂题解,想了好久(一整天)才想明白是枚举弦上点二分半径check角度,看了下clj的代码发现思路都一样就开始写了. 借鉴了一下clj的代码. 调了一个多小时. 几个注意点:看到好多 rand ...
- Android Studio 真机调试 连接手机
前提:adb环境已经配置 手机端: 1.打开手机开发者权限,”设置“ 中找到 “版本号”,连续多次点击,会提示打开“开发者”.我的是 “设置” --> "关于手机" --&g ...
- gradle环境变量设置_配置注意事项
看<Spring源码深度解析>的时候,在windows7系统中按照书里配置gradle环境变量,配置完后输入gradle -v,一直显示:'gradle'不是内部或外部命令,也不是可执行的 ...
- JVM,Tomcat与OSGi类加载机制比较
首先一个思维导图来看下Tomcat的类加载机制和JVM类加载机制的过程 类加载 在JVM中并不是一次性把所有的文件都加载到,而是一步一步的,按照需要来加载. 比如JVM启动时,会通过不同的类加载器加载 ...
- URL跳转与webview安全浅谈
URL跳转与webview安全浅谈 我博客的两篇文章拼接在一起所以可能看起来有些乱 起因 在一次测试中我用burpsuite搜索了关键词url找到了某处url我测试了一下发现waf拦截了指向外域的请求 ...
- 微信小程序快速开发上手
微信小程序快速开发上手 介绍: 从实战开发角度,完整系统地介绍了小程序的开发环境.小程序的结构.小程序的组件与小程序的API,并提供了多个开发实例帮助读者快速掌握小程序的开发技能,并能自己动手开发出小 ...
- [Reversing.kr] Easy_KeygenMe Writeup
IDA打开.Main()函数就是关键算法 v6,v7,v8 是连续的 .可看成 L=[16,32,48].输入的name每位分别于L[]异或 得到的值存在v13.然后清空v9的值 ,输入Serial储 ...