perl 第三弹 句柄

Posted 流浪骆驼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了perl 第三弹 句柄相关的知识,希望对你有一定的参考价值。

记得点击蓝字关注我们哦!


0 1

上期回顾

    • perl中""配对存在
    • Bareword报错表示某个词语两边缺少引号
    • 解决问题思路:确定问题,确定问题位置,查找原因,解决问题。

0 2

句柄


句柄(file handle),该文件句柄对于打开的文件是唯一的识别依据。


在通常情况下,每当程序开始执行时,父进程(通常就是shell程序)便会打开三个预先定义的流,分别叫做stdin、stdout和stderr。在默认情况下,这三个流都连接在终端屏幕上。


stdin流是输入的来源,即终端键盘;stdout是输出目的地,即屏幕;而stderr 则是打印程序错误信息的地方,一般也是终端屏幕。


Perl会从shell继承上述stdin、stdout和stderr流。Perl并不直接访问这些流,而是把它们命名为文件句柄。Perl只能通过这些文件句柄来访问上述流。其中,stdin 的文件句柄是STDIN、stdout的文件句柄是STDOUT;而stderr 的文件句柄则是STDERR。后面将详细介绍如何创建自己的文件句柄。读者现在只需使用上述预先定义好的句柄即可。


在默认情况下,print 和printf 函数都会把输出发送到STDOUT 文件句柄中。


# 输出到屏幕上Hello worldprint "Hello world\n";# 下面代码含义 与 上一行 一致print STDOUT "Hello world\n";
# 输出到屏幕上What is your name?print "What is your name? ";# 读取键盘输入,并赋值给$name变量$name = <STDIN>;# 输出到屏幕上What is your father's name? print "What is your father's name? ";# 读取键盘输入,并赋值给$paname变量$paname=<>;# 输出到屏幕上Hello respected one, $paname ,# 其中$paname值来自键盘输入print "Hello respected one, $paname";
# 打开文件out.txt,方向为写入,OUT句柄表示对out.txt的操作# 本篇侧重句柄,文件的操作后面会详细讲解open OUT ,"">","out.txt" or die $!;# 通过OUT句柄,out.txt文件中写入Life is good with Perl.print OUT "Life is good with Perl.\n";# 关闭句柄close OUT;
0 3

总结


名称
shell
perl
含义
标准输入
stdin STDIN 来自终端键盘的输入
标准输出
stdout STDOUT
输出到屏幕
错误输入
stderr STDERR 打印程序错误信息的地方,一般是终端屏幕


(1)空钻石符<>, 将从命令行指定的所有文件读, 如果没有指定, 从STDIN读

(2)print 没有指定句柄,默认为STDOUT,即屏幕


END


参考:

https://baike.baidu.com/item/%E6%96%87%E4%BB%B6%E5%8F%A5%E6%9F%84




以上是关于perl 第三弹 句柄的主要内容,如果未能解决你的问题,请参考以下文章

开发工具的安装与使用(第三弹)

分享二合一 第三弹

分享二合一 第三弹

设计与实现分离——面向接口编程(OO博客第三弹)

爬虫学习 Python网络爬虫第三弹《爬取get请求的页面数据》

codechef营养题 第三弹