perl编程_11 系统之间的互操作性.PDFVIP

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
下载 第11学时 系统之间的互操作性 到现在为止,我们介绍的所有P e r l特性基本上都属于独立的特性。如果你想完成某项操作, 那么你必须自己亲自执行这项操作,比如给数据排序,创建目录列表,插入配置信息等。问 题是它的工作量很大,你必须重复进行可以在其他地方完成的工作。 关于P e r l ,现在有一种非常流行的说法,那就是它是一种非常出色的“胶水”语言。它的 意思是说,P e r l 能够使用操作系统作为组件来安装的其他程序,然后将这些程序组合起来,形 成一个更大的程序。它能够启动操作系统的实用程序,用它们来搜集信息,与你进行通信, 然后将它们关闭。 P e r l 能够将这些较小的实用程序“胶合”在一起,形成一个大得多而且更加有用的实用程 序。这种能力的好处是使你能够迅速编写在其他情况下需要花费很长时间来编写的代码,并 且能够对代码进行调试。你应该使用对你有用的任何手段,迅速而准确地编写代码。将系统 的实用程序胶合在一起,可使之具备很大的优点。 在本学时中,你将要学习: • system()函数。 • 捕获输出。 • 代码的移植性。 本学时中的大部分代码例子都有两个版本,一个用于 Wi n d o w s和D O S 系 统,另一个用于U N I X系统。如果只有一个代码例子,那么你会在课文中找到 关于如何修改该代码,以适合另一种系统的需要,这种修改通常是少量的更 改。 11.1 system()函数 若要运行非P e r l 的命令,最简单的方法是使用 s y s t e m ( )函数。s y s t e m ( )函数能够暂停P e r l程 序的运行,然后运行外部命令,接着再运行你的 P e r l程序。s y s t e m函数的句法如下: 该语句中的c o m m a n d是你要运行的命令,如果一切正常,系统的返回值是 0 ,如果出现问 题,则返回非零值。请注意,这个结果与 Tr u e和F a l s e这两个P e r l标准返回值相反。 下面是在U N I X 系统上运行s y s t e m函数的一个例子: 下面这个例子显示在D O S /Wi n d o w s下运行s y s t e m 的情况: 第11学时 系统之间的互操作性使用127 下载 总的来说, s y s t e m 函数在上述两种系统结构下的运行情况是相同的。应该记住的是,两 种操作系统下运行的命令基本上是不同的。若要在 D O S下获得一个文件列表,可以使用 d i r命 令,而在 U N I X 下获得文件列表,要使用 l s 命令。在非常少见的情况下,比如在 p e r l d o c 中, U N I X和D O S系统下的命令是相同的。 当s y s t e m 函数运行外部命令时,该命令的输出在屏幕上显示的情况与 P e r l程序输出的情况 是相同的。如果该外部命令需要输入数据,那么来自终端的输入与你的 P e r l程序从终端读入的 输入是相同的。 s y s t e m函数运行的命令继承了 S T D I N和S T D O U T文件描述符,因此,外部命 令执行输入/输出的位置与你的 P e r l程序执行输入/输出的位置是完全相同的。通过 s y s t e m函 数来调用完全交互式的程序是可能的。 请看下面这个在U N I X 下运行的代码例子: 现在再看在Wi n d o w s /D O S下运行的代码例子: 上面的每个例子都对 m y f i l e . t x t运行一个编辑器, U N I X 的编辑器是v i ,D O S 的编辑器是 e d i t 。当然编辑器是全屏幕运行的,所有的标准编辑器命令均能运行。当编辑器退出时,控制 权返回给P e r l 。 可以使用s y s t e m 函数运行任何程序,不只是控制台方式的程序(文本程序)。在U N I X 下, 下面这个例子运行一个图形时钟: 在D O S /Wi n d o w s下,下面这个例子用于启动一个图形文件编辑器: 基本的命

文档评论(0)

清籁 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档