当前位置: 传客网 > Perl调用外部命令的方式&区别

Perl调用外部命令的方式&区别

2016-12-30 作者:好色屠夫

主要的方式简述如下:

1. system("command");
使用该命令将开启一个子进程执行引号中的命令,父进程将等待子进程结束并继续执行下面的代码。

2. exec("command");
效果同system命令类似,区别是不会开启子进程,而是取代父进程,因此执行完引号中的命令后进程即结束。一般和fork配合使用。

3. `command`;
使用反引号调用外部命令能够捕获其标准输出,并按行返回且每行结束处附带一个回车。反引号中的变量在编译时会被内插为其值。

4. open LIST "ls -l|";
    open MORE "|more";
    @list=;
    print MORE @list;
    close(LIST);
    close(MORE);
使用带管道的文件句柄来执行外部命令,使用方式与读写文件类似。可以从外部命令的输出读取数据,也可以将数据输出到外部命令作为输入。

5. defined(my $pid=fork) or die "Can not fork: $!\n";
    unless ($pid) {
        exec ("date");
    }
waitpid ($pid,0);
使用fork将会开启子进程与父进程同时执行之后的代码,其中父进程中fork会返回一个非零的数,而子进程中将返回零。
上面的代码完成和system("date")相同的功能。比起system单纯地调用外部命令,fork可以完成更加复杂的进程操作。
#perl & cgi


相关推荐

  • 电脑关机还是休眠?Win10关闭方式查看命令详解

    今天qq业务乐园小编为大家带来电脑关机还是休眠?Win10关闭方式查看命令。Win10全新的“快速启动”结合了传统的“休眠”模式原理,属于“混合”开关机方式,这种方式有效减少了开关机时间。不过在关机选项上并没有具体反映,如果你想知道自己的W

  • 爱因斯坦引力波与刘武青引力波产生方式区别及相同点

    爱因斯坦引力波与刘武青引力波产生方式区别及相同点区别:爱因斯坦,物质的运动,质量的变化产生引力波。刘武青,物质原处不动,质量不变,储存的能量变化,产生引力波。物质(物体)可以储存能量,是众所周知的事实,而且,储存的能量是可以周期性变化的。相

  • MathType快捷方式的宏命令怎样改变

    有时候你想把MathType快捷键更改得更简单更方便记忆一些,在之前你可能已经设置过这些快捷方式,但是你又想要将这些快捷方式恢复到安装MathType之前的状态。有很多方法可以解决这个问题,但下面这种是最简单的:更多MathType使用技巧

  • Sensor信号输出YUV、RGB、RAW DATA、JPEG 4种方式区别

    [QUESTION]Sensor信号输出YUV、RGB、RAWDATA、JPEG4种方式区别[ANSWER]几种数据格式介绍:YUV:luma(Y)+chroma(UV)格式,有YUV444,YUV422,YUV420几种format,一般

  • 抽象工厂模式-与-工厂方法模式区别

    厂方法UML图:抽象工厂UML图:---------------------------------对于java来说,你能见到的大部分抽象工厂模式都是这样的:它的里面是一堆工厂方法,每个工厂方法返回某种类型的对象。比如说工厂可以生产鼠标和键

  • CAD快捷键?CAD命令大全?

    快捷命令名称,*命令全名如:CO,*COPY即键入快捷命令后,再键入一个逗号和快捷命令所替代的命令全称。AutoCAD的命令必须用一个星号作为前缀。附:常见的快捷命令(一)字母类1、对象特性ADC,*ADCENTER(设计中心“Ctrl+2

  • 命令行方式探测邮件服务器

    musemailsvr.com版权所有,转载请注明出处在实际应用中,管理员可能会偶尔遇到无法发送邮件,或者无法正常收取邮件的情况,发生这种状况的时候,您可以参考以下方法,对服务器进行命令行方式的探测。以下命令都是在Windows命令提示符窗

  • 怎么用命令行方式修改机器的时间?

    怎么用命令行方式修改机器的时间?怎么用命令行方式修改机器的时间啊,谢谢啦怎么用命令行方式修改机器的时间?[quote][i]原帖由"linxd0726"]怎么用命令行方式修改机器的时间啊,谢谢啦[/quote发表:[/i

  • 如何用好FL Studio中的切割命令

    之前我们讲过FLStudio钢琴卷轴中的量化命令,同样打开钢琴卷轴中的工具菜单,其中还包含了一种切割的命令。那么这个切割命令到底怎么去操作呢?今天就给大家来讲一讲切割命令的使用方法。  若有疑问可直接访问:http://www.flstud

  • xp系统中的cmd命令提示符如何打开

    在一些比较专业的电脑技巧中,往往需要用到命令提示符,运行一些系统命令来实现一些无法在Windows系统中直接打开的操作。对于很多喜欢玩转电脑的新手伙伴们可能还不知道命令提示符怎么用,其实很简单,只要进入到命令符操作界面,然后熟悉一些操作命令

  • 七、Python调用zip命令正确操作方法解析

    Python调用zip命令正确操作方法解析(转自互联网)当我们在应用Python编程语言进行程序开发的时候,我们会发现这一语言可以帮助我们轻松的完成一些特定的功能需求。在这里我们就先一起来了解一下Python调用zip命令的使用方法,以此了

  • 命令行方式探测邮件服务器

    在实际应用中,管理员可能会偶尔遇到无法发送邮件,或者无法正常收取邮件的情况,发生这种状况的时候,您可以参考以下方法,对服务器进行命令行方式的探测。以下命令都是在Windows命令提示符窗口下完成的,所以在操作之前,必须打开命令提示符窗口,在

  • 如何在java程序中调用linux命令或者shell脚本

    2011-02-2120:32:00|分类:技术文章|标签:|字号大中小订阅在java程序中如何调用linux的命令?如何调用shell脚本呢?这里不得不提到java的process类了。process这个类是一个抽象类,封装了一个进程(你

  • Java调用Windows命令(转)

    Java调用Windows命令Java调用Windows命令主要用到两个类:java.lang.Runtime每个Java应用程序都有一个Runtime类实例,使应用程序能够与其运行的环境相连接。可以通过getRuntime方法获取当前运行

  • 第一课:网管常用的网络命令

    第一课:网管常用的网络命令网络管理员和网络技术人员常用的网络命令了解和掌握下面几个命令将会有助于你更快地检测到网络故障所在,从而节省时间,提高效率。1、测试物理网络-----------网管员必须掌握的命令:ping192.168.0.8-

  • 利用ipc$入侵的相关命令

    利用ipc$入侵的相关命令我们在入侵的时候难免遇到忘记命令的时候,现在将我所知道的一些命令总结出来提供给各位。通过这些命令可以解决很大一部分新手的问题。00:netuse作用:连接计算机或断开计算机与共享资源的连接,或显示计算机的连接信息。

  • 黑客入门必须掌握的几个入侵命令

    一、ping​它是用来检查网络是否通畅或者网络连接速度的命令。作为一个生活在网络上的管理员或者黑客来说,ping命令是第一个必须掌握的DOS命令,它所利用的原理是这样的:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送

  • Linux Shell 管道命令(pipe)使用及与 Shell 重定向区别

    看了前面一节:linuxshell数据重定向(输入重定向与输出重定向)详细分析估计还有一些朋友是头晕晕的,好复杂的重定向了。这次我们看下管道命令了。shell管道,可以说用法就简单多了。管道命令操作符是:”|”,它仅能处理经由前面一个指令传

  • 各种调用方式的区别

    1.如果函数func是__cdecl(默认调用方式),调用时情况如下intmain(){//参数从右到左压栈push4push3push2push1callfuncaddesp0x10//调用者恢复堆栈指针esp,4个参数的大小是0x10(

  • set和setenv命令的区别

    http://blog.csdn.net/qinqqfirst/article/details/6583068这里讨论的是tcsh中变量及环境变量时set和setenv命令的区别set语法setname=valuesetenv语法seten

返回
顶部