一、system

perl也可以用system调用shell的命令,它和awk的system一样,返回值也是它调用的命令的退出状态.

代码如下:

[root@AX3sp2 ~]# cat aa.pl

#! /usr/bin/perl -w

$file = "wt.pl";

system("ls -l wt.pl");

$result = system "ls -l $file";

print "$result \n"; #输出命令的退出状态

system "date";

[root@AX3sp2 ~]# perl aa.pl

-rwxr-xr-x 1 root root 126 12-16 15:12 wt.pl

-rwxr-xr-x 1 root root 126 12-16 15:12 wt.pl

0

2010年 12月 16日 星期四 15:58:34 CST

二、反引号

perl的system函数和awk的一样不能够返回命令的输出.

要得到命令的输出,就得使用和shell本身一样的命令: ` `

代码如下:

[root@AX3sp2 ~]# cat bb.pl

#! /usr/bin/perl

print `date`;

print "this is test \n";

[root@AX3sp2 ~]# perl bb.pl

2010年 12月 16日 星期四 15:51:59 CST

this is test

三、exec

最后,perl还可以使用exec来调用shell的命令. exec和system差不多,不同之处在于,调用exec之后,perl马上就退出,而不会去继续执行剩下的代码

代码如下:

[root@AX3sp2 ~]# cat cc.pl

#! /usr/bin/perl

exec ("echo this is test");

print "good bye !\n"; #这句话不会被输出

[root@AX3sp2 ~]# perl cc.pl

this is test

更多信息请查看IT技术专栏

perl脚本执行linux命令行,Perl调用shell命令方法小结相关推荐

  1. Vim命令行模式调用shell命令方式(笔记)

    本文为阅读vim实用技巧时的一部分笔记 在vim中操作时,我们能很方便德调用shell命令.下面选取了最有用的一些调用外部命令的方式: :shell:启动一个shell(输入exit返回vim) :! ...

  2. python调用shell命令-用Python调用Shell命令

    Python经常被称作"胶水语言",因为它能够轻易地操作其他程序,轻易地包装使用其他语言编写的库,也当然可以用Python调用Shell命令. 用Python调用Shell命令有如 ...

  3. Linux命令行–更多bash shell命令(转)

    4.1.1 探查程序 ps 命令 默认情况下,ps命令只会显示运行在当前控制台下的属于当前用户进程的进程 显示的当前进程的项目 进程号 运行在哪个终端(tty) 进程占用的CPU时间 Linux系统支 ...

  4. dos命令行输入adb shell命令为什么报错

    在命令行(就是开始--运行--输入cmd)模式下输入adb shell命令一般会报两种错误,一是"adb不是内部命令或外部命令,也不是可运行的程序或批处理文件",二是"e ...

  5. Linux(12)-命令行的使用,shell脚本

    命令行的使用,shell脚本 1.终端shell,man 2.shell 编程 2.1 shell脚本 2.2 注释 2.3 指明所用的shell 2.4 支持函数 2.5 使用变量 2.6 解析命令 ...

  6. python操作linux命令行_python调用调用Linux命令

    如何调用Linux命令 下面代码演示了调用一个shell命令, 其中,命令的输出会存储到result变量中, 而命令的返回值,则存储到exitcode中,由此可见,调用shell命令还是很方便的: i ...

  7. Perl脚本执行方法小结

    Perl脚本执行: ./filename.pl 要这样用,脚本需添加声明行,Linux下一般是添加:#!/usr/bin/perl -w perl filename.pl Perl 脚本普遍适用,包括 ...

  8. java操作Linux 调用shell命令,shell脚本

    1.问题 在最近做的项目当中,需要用Java调用基于python写的两个不同的模型运行并且得到实验结果: 1.在服务器上运行的文本识别模型 2.在本地Ubuntu中annacoda 虚拟环境中运行的影 ...

  9. android 启动linux命令行模式,Android用命令行启动应用

    Android是基于Linux内核的操作系统,用Java写的应用程序被Android运行时虚拟机运行. 因为Android是基于Linux的,而Linux执行ELF格式的可执行文件,所以用C++编写的 ...

最新文章

  1. 了解你所不知道的SMON功能(一):清理临时段
  2. Android4.0.4之后,服务器返回401或者407时,获取不到消息体的解决办法
  3. 【转载】使用javassist动态注入代码
  4. UA OPTI512R 傅立叶光学导论11 卷积的性质
  5. 错误:Subquery returns more than 1 row 表示子查询返回了多行数据
  6. struts2校验再提交多条提示信息
  7. partition oracle用法,Oracle partition by 使用说明
  8. java day_Java_Day7(上)
  9. 麻雀虽小,五脏俱全:分析CVS活动情况的小工具(有源码供学习)
  10. 暑期训练日志----2018.8.16
  11. linux 复用寄存器,I/O多路复用一些概念
  12. docker(4):docker的安装(centos7)和加速
  13. 如何在Mac OSX上装妥node-camera
  14. GitHub 实现了子资源完整性(SRI)
  15. 各GIS软件添加天地图方式
  16. apple 关闭双重认证_如何在Apple Mail中关闭联系人和事件建议
  17. 豆瓣排名前500的电视剧
  18. 远程分支已经不存在的解决办法
  19. 一流的匠人,必有一流的心性:工作是人生最尊贵、最重要、最有价值的行为
  20. 前景广阔的技术---云计算

热门文章

  1. 苹果手机更改照片大小kb_苹果手机照片视频删除了怎样恢复?专业人士建议你这样做...
  2. 文件服务器有病毒,服务器共享文件会被病毒加密吗
  3. 升级鸿蒙系统无法选择应用,申请鸿蒙系统有一个应用选择怎么选择呢
  4. python非贪婪匹配_Python中关于正则表达式非贪婪以及多行匹配功能详解
  5. 4键电子手表说明书_数字S1系统7寸门口主机操作说明书
  6. linux cpu频率软件,linux cpu频率控制
  7. 在前端网页设计中 align 和 valign 两种对齐方式的不同取值区分(持续补充)
  8. java中子类与父类中隐含的this引用的分析
  9. 用HTML做一个简单的web登录页面,简单的JavaWeb注册登录案例
  10. 关于java内容_关于java一些概念性的内容