加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl - 快速了解Perl

发布时间:2020-12-15 20:50:47 所属栏目:大数据 来源:网络整理
导读:#! /usr/bin/perl ? @lines= `perldoc –u –f atan2`; ? foreach(@lines){ ??? s//w([^]+)//U$1/g; ??? print; } ? 第一行是#!这一行,#!行和程序的可移植性相关,需要找到每台机器的存放地点。幸运的是,通常都被放在/usr/bin/perl 或/usr/local/bin/perl

#! /usr/bin/perl
? @lines= `perldoc –u –f atan2`;
? foreach(@lines){
??? s//w<([^>]+)//U$1/g;
??? print;
}

?

第一行是#!这一行,#!行和程序的可移植性相关,需要找到每台机器的存放地点。幸运的是,通常都被放在/usr/bin/perl 或/usr/local/bin/perl 中。
如果不是这样,则需要找到你自己机器上perl 的存放地点,然后使用那个路径。在Unix 系统中,可能使用如下一行找到
perl:
#! /usr/bin/env perl
如果Perl 存放的路径不在你的搜索路径上,应当询问你的系统管理员或者某一个和你使用同一台机器的人。
在非Unix 系统中,传统上把第一行写做#!perl。

?

第二行运行了一个外部命令,由` `括起来了。(反引号` 通常在美式键盘数字1 的左边。不要和单引号‘混淆了。)我们用的命令的是perldoc

–u –f atan2;在命令行输入这个命令,看看能得到什么结果。perldoc 这个命令能在大多数机器中使用,

它显示相关的文档。◆这个命令告诉你一些关于反正切函数atan2 的信息;在这里我们把它做为一个外部命令,并处理它
的输出信息。

?

反引号内的命令的输出被保存在@lines 中。下一行是一个循环,它依行处理@lines 中的信息。循环内语句是缩进的。虽然
Perl 并不需要这样,当这是好的编程习惯。
循环内的第一行让人惊慌;它是s//w<([^>]+)>//U$1/g;这里不过多的讨论细节,我们只提示下,它能改变有特殊标记(<>)
的行,在每一perldoc 这个命令的输出中,都至少有一行具有这样的形式。
下一行,令人惊奇的是,它输出每一行(可能是修改过的)。输出的结果和perldoc –u –f atan2 类似,但标记(<>)内的内
容有些不同。


总结下,通过这几行程序,我们运行了另一个程序,把它的输出保存在内存中,修改内存中的数据,再把结果输出来。这
种把数据从一种形式转换成另一种形式的程序在Perl 中很常见。

反引号内的命令的输出被保存在@lines 中。下一行是一个循环,它依行处理@lines 中的信息。循环内语句是缩进的。虽然 Perl 并不需要这样,当这是好的编程习惯。 循环内的第一行让人惊慌;它是s//w<([^>]+)>//U$1/g;这里不过多的讨论细节,我们只提示下,它能改变有特殊标记(<>) 的行,在每一perldoc 这个命令的输出中,都至少有一行具有这样的形式。 下一行,令人惊奇的是,它输出每一行(可能是修改过的)。输出的结果和perldoc –u –f atan2 类似,但标记(<>)内的内 容有些不同。 总结下,通过这几行程序,我们运行了另一个程序,把它的输出保存在内存中,修改内存中的数据,再把结果输出来。这 种把数据从一种形式转换成另一种形式的程序在Perl 中很常见。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读