首页 > 其他 > 详细

Perl 中 `cmd` 和system"cmd"的区别

时间:2015-03-19 23:20:02      阅读:460      评论:0      收藏:0      [点我收藏+]

在perl中,调用系统命令有两种形势,`cmd` 和system"cmd",他们主要的区别是`cmd`会获取返回结果,而system"cmd"会直接将结果输出到屏幕上,针对这个区别有以下两种用法:

1,当需要获取运行结果的时候,如获取当前目录,就应该写成 chomp($pwd = `pwd`);如果写成 $pwd = system"pwd",则$pwd值为0。(这里用到chomp说明`cmd`的结果是包含换行符的,使用时需要注意)。

2,当需要让一些命令后台运行时,则应该使用system"cmd" ,如在perl设计流程的时候,让一个脚本在后台运行的同时,继续执行下面的命令,此时,如果使用 system "cmd&",则命令会在后台运行,继续执行下面语句。如果使用`cmd&`,虽然加了&符号,但是perl仍然会等待该命令的返回结果,没有达到后台运行的效果。

Perl 中 `cmd` 和system"cmd"的区别

原文:http://www.cnblogs.com/lyon2014/p/4351849.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!