perl调用外部命令或者脚本,如何取得外部命令或者脚本的返回值(退出值)
2011-12-25 01:40
453 查看
使用perl调用外名命令有很多方法,这里就不详细讲解。
如有shell脚本a.sh
#!/bin/bash
echo "script out put"
exit 2
有perl脚本test.pl调用a.sh
#!/bin/perl -w
$output = qx(/usr/local/a.sh);
$exitcode = $?;
print "output = " . $output;
print "exitcode = " . $exitcode;
执行此perl脚本./test.pl
你会发现输出的内容为
output = script out put
exitcode = 256
明显就不是你所期望的结果。输出应该是
output = script out put
exitcode = 2
这才是我们期待的。
原因是什么我不多说,看如下解决解决方案。
#!/bin/perl -w
$output = qx(/usr/local/a.sh);
$exitcode = $? >>8;
print "output = " . $output;
print "exitcode = " . $exitcode;
再次运行脚本你会发现OK了。
如有shell脚本a.sh
#!/bin/bash
echo "script out put"
exit 2
有perl脚本test.pl调用a.sh
#!/bin/perl -w
$output = qx(/usr/local/a.sh);
$exitcode = $?;
print "output = " . $output;
print "exitcode = " . $exitcode;
执行此perl脚本./test.pl
你会发现输出的内容为
output = script out put
exitcode = 256
明显就不是你所期望的结果。输出应该是
output = script out put
exitcode = 2
这才是我们期待的。
原因是什么我不多说,看如下解决解决方案。
#!/bin/perl -w
$output = qx(/usr/local/a.sh);
$exitcode = $? >>8;
print "output = " . $output;
print "exitcode = " . $exitcode;
再次运行脚本你会发现OK了。
相关文章推荐
- 如何在java程序中调用linux命令或者shell脚本
- java工具(一)----如何在java程序中调用linux命令或者shell脚本及 画图
- python调用其它脚本:pig,python,shell等等 (如何获取pig脚本执行的返回值)
- c# 调用数据库函数(如何取得返回值)
- python调用其它脚本:pig,python,shell等等 (如何获取pig脚本执行的返回值)
- 如何在java程序中调用linux命令或者shell脚本?
- 如何在java程序中调用linux命令或者shell脚本
- 如何在java程序中调用linux命令或者shell脚本
- 如何在java程序中调用linux命令或者shell脚本
- C#写的webservice返回值为xmlDocument或者xmlDataDocument,客户端调用如何进行处理
- perl 脚本里调用shell 以及获取返回值
- 如何在java程序中调用linux命令或者shell脚本
- 如何在java程序中调用linux命令或者shell脚本
- 如何用Perl对字符串或者数字数组进行排序。 hash 按value/按keys 排序(多种方法)。
- 如何让脚本自己输入密码或者yes no
- 如何用sqlplus执行sql脚本,且让出错后及时退出sqlplus
- perl脚本调用shell命令后的结果比较总结
- 如果一个父类有多个子类或者一个接口有多个实现的时候,Spring是如何判断该调用哪个的呢?源码分析如下
- 如何安全退出已调用多个Activity的Application?
- 实例源码1:利用Java调用可执行命令并取得其返回值