php exec执行多条命令,小技巧:在PHP中调用多条shell指令
原标题:小技巧:在PHP中调用多条shell指令
有时候,在持续集成的过程中,需要通过网页在目标服务器上执行shell指令,今天就列举一个实例进行讲解。
比如,我们需要能通过网页将SVN update进行自动化,那么,可以在PHP中编写如下脚本:
以上代码演示了使用PHP中的exec函数执行多条shell指令的方法。需要注意以下几个要点:
1) 多条指令执行需要使用&&作为间隔,而不是分号;
2) 结尾的2 >&1 表示将标准错误也输出到标准输出,这样,我们可以查看shell执行的结果,不论其执行成功还是失败,这样对于查找错误原因很有帮助。
3) exec的第二个参数表示shell脚本执行的输出内容,第3个参数表示最后一条shell指令执行后的退出代码。一般0表示执行成功,非0表示执行失败。
具体针对上述实例中的svn update来说,还需要注意以下两点:
1) php中的shell指令时在web server的用户权限上执行的,一般对于Windows上的IIS来说,这个用户是I_USER,所以,执行指令之前需要确保I_USER用户对repo目录拥有读写权限。
2) 由于上面1的原因,如果尝试update一个https的仓库,因为I_USER用户无法显示图形界面,所以无法选择保存证书。Work around方式为:使用HTTP方式,并在shell指令中指定svn repo的用户名和密码。但是请注意,这种方法会暴露repo的登录凭证,需要谨慎使用。返回搜狐,查看更多
责任编辑:
php exec执行多条命令,小技巧:在PHP中调用多条shell指令相关推荐
- 100条Vista命令行技巧Tips,您知道几条?
原文:[url]http://gnaw0725.blogbus.com/logs/5011924.html[/url] 100条Vista命令行技巧Tips,您知道几条? 自从去年装上Vista,也有 ...
- docker exec执行多个命令详解
2019独角兽企业重金招聘Python工程师标准>>> docker exec执行多个命令详解 2018年04月23日 22:46:24 阅读数:6928 标签: dockercon ...
- 解决java使用Runtime.exec执行linux复杂命令不成功问题
解决java使用Runtime.exec执行linux复杂命令不成功问题 参考文章: (1)解决java使用Runtime.exec执行linux复杂命令不成功问题 (2)https://www.cn ...
- 程序员求职高峰期,这12条工作小技巧必看
过完春节,该拿的奖金都拿了,又到了一年一度的离职高峰期,新老手程序员纷纷走上了求职之路. 今天给所有程序员提12条工作小技巧,让你在新工作上越做越顺. 1.写文档的能力非常重要 像Spring,hib ...
- VB小技巧:字符变量中双引号的输入
'如要输入表示 "aa" '理论表达方式如: a=""aa"" '但会出错 'ASC码可能达到效果 kk=chr(34) &am ...
- VB.net小技巧——VB.net中SHELL函数以及SendKeys函数
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 VB.net小技巧--VB.net中SHELL函数以及SendKeys函数 前言 shell 使用 前言 一直在研究怎么用VB.net ...
- 工作小技巧—在word中使用邮件批量插入excel中的数据
工作小技巧-在word中使用邮件批量插入excel中的数据 word中使用邮件批量插入excel中的数据 1.选择数据源 2.插入数据 3.完成合并 word中使用邮件批量插入excel中的数据 1. ...
- linux exec 脚本之家,详解Shell脚本中调用另一个Shell脚本的三种方式
主要以下有几种方式: Command Explanation fork 新开一个子 Shell 执行,子 Shell 可以从父 Shell 继承环境变量,但是子 Shell 中的环境变量不会带回给父 ...
- linux 常用命令 小技巧
转载来自:http://www.cnxct.com/linux-%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4-%E5%B0%8F%E6%8A%80%E5%B7%A7/ 1 ...
最新文章
- SMOTE处理样本不平衡问题
- ARToolKit从图片生成特征点数据
- 程序员至少一半时间用于测试
- atitit.提升开发效率---MDA 软件开发方式的革命(5)----列表查询建模
- 判断单链表中的元素是否递增_判断某单链表l总的元素是否是递增的算法
- java安全体系:JCA、JCE、JSSE、JAAS
- 【优化求解】基于头脑风暴优化算法BSO求解最优目标matlab源码
- 咖说 | 关于当前环境下的经济分析
- Ad Mucher最新有效注册,升级方式
- 评价指标(一)精确率,召回率,F1-score
- WeLink互动直播:维护网课秩序,杜绝外人乱入
- 哈工大软件学院编译原理实验3——语义分析
- 大数据风控必看,挖掘学历数据中暗藏的还款意愿及还款能力
- 交通行业服务器操作系统加固报价,加固清单报价实例
- 万变不离其宗之ZYNQ启动介绍
- IDEA两种方式设置类注释模板
- 小巧易用的分区工具——MiniTool Partition Wizard
- 上班族妈妈的教子宝典:教你做事业成功的好妈妈
- Java文本文档地址地址怎么找_java 中如何在一个文本文档里取出邮件地址
- 助力企业高效率办公,华为云桌面必不可少
热门文章
- 张小龙Linux微信,微信至今没有黑暗模式,原来是张小龙“全责”?
- c语言1A,C程序设计语言1a.ppt
- 国庆活动延长三天!快来领取你的数据技术嘉年华门票!
- 【每日一练 085】性能优化-实例优化(四)
- 嘉年华专访 | 国际上智能运维研究
- 遇见未来 | 对话王璞:谈分布式系统在企业落地的挑战
- 带你认识三种kafka消息发送模式
- 云小课|细数那些VMware虚拟机的恢复招式
- 揭开KPI异常检测顶级AI模型面纱
- 重磅解读:K8s Cluster Autoscaler模块及对应华为云插件Deep Dive