jenkins执行shell脚本
2016-03-24 16:24
453 查看
用过Jenkins的都知道,在Build配置那里有一个Add buld step, 有这样两个选项:
1. Execute Windows batch command
2. Execute shell
第1个是执行windows命令,第2个是执行shell脚本。
![](https://img-blog.csdn.net/20141030183358298?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZmlyZW9mamF2YQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
一开始我以为不管jenkins安装在windows下还是linux下都可以执行windows命令和linux命令,但是后来我发现在windows中,是可以执行第1个的,但是用第2个选项执行shell会失败,会报错说不能执行sh。
我想第2个Execute shell应该只可以在linux中使用吧。
那我如果想在这里远程登录到linux服务器并执行相应的shell脚本怎么办呢?
经过研究我发现了一个插件Jenkins SSH plugin.
![](https://img-blog.csdn.net/20141030183329578?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZmlyZW9mamF2YQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
安装了这个插件后,我们进入系统的配置管理会发现多了一项
![](https://img-blog.csdn.net/20141030183433070?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZmlyZW9mamF2YQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
配置好这里后保存,这里即可以输入用户名密码,也可以使用key文件来免密码登录。
接下来新建一个job,在job配置里面会发现多了一个选项
![](https://img-blog.csdn.net/20141030183649578?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZmlyZW9mamF2YQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
这里的SSH site选择我们刚刚在系统配置里面创建的连接。
下面就可以写脚本或者是执行服务器上的脚本了。
这里还碰到了一个问题,我用Xshell远程登录到服务器,直接可以执行我的一个脚本,这个脚本里有一些命令是在PATH路径下的。
但是在Jenkins里面直接执行脚本却报错了,说是找不到这些命令,最后我在执行脚本前先export PATH = /home/....
把PATH设置了一下,结果就执行成功了,不知道为什么 jenkins远程登录默认读不到PATH.
1. Execute Windows batch command
2. Execute shell
第1个是执行windows命令,第2个是执行shell脚本。
一开始我以为不管jenkins安装在windows下还是linux下都可以执行windows命令和linux命令,但是后来我发现在windows中,是可以执行第1个的,但是用第2个选项执行shell会失败,会报错说不能执行sh。
我想第2个Execute shell应该只可以在linux中使用吧。
那我如果想在这里远程登录到linux服务器并执行相应的shell脚本怎么办呢?
经过研究我发现了一个插件Jenkins SSH plugin.
安装了这个插件后,我们进入系统的配置管理会发现多了一项
配置好这里后保存,这里即可以输入用户名密码,也可以使用key文件来免密码登录。
接下来新建一个job,在job配置里面会发现多了一个选项
这里的SSH site选择我们刚刚在系统配置里面创建的连接。
下面就可以写脚本或者是执行服务器上的脚本了。
这里还碰到了一个问题,我用Xshell远程登录到服务器,直接可以执行我的一个脚本,这个脚本里有一些命令是在PATH路径下的。
但是在Jenkins里面直接执行脚本却报错了,说是找不到这些命令,最后我在执行脚本前先export PATH = /home/....
把PATH设置了一下,结果就执行成功了,不知道为什么 jenkins远程登录默认读不到PATH.
相关文章推荐
- PowerShell 列举磁盘文件
- IT_linux_shell_awk_001--awk开始
- linux shell 统计不同文件扩展名的个数
- struts修复GetShell漏洞,将2.1.8.1升级至2.3.28
- shell中的sort命令
- shell if else 用法 syntax error near unexpected token `then'
- shell输入输出重定向
- bash常用快捷键
- 【shell编程基础0】bash shell编程的基本配置
- Bash的基本功能
- (转)73条日常Linux shell命令
- Linux平台搭建Jenkins+Maven+Shell实现自动化构建部署
- linux下监视进程 崩溃挂掉后自动重启的shell脚本
- shell 脚本 修改系统时间
- centos 防火墙 iptables 用shell代码来添加
- shell--内建命令--exec
- Linux shell 变量 数学 运算
- Bash空格的那点事
- 常用的shell脚本
- [Android] 为Android安装BusyBox —— 完整的bash shell