Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->编程语言 ->Perl ->正文

Perl常用系统函数

来源:Linuxdby.com 作者:Webmaster 时间:2007-06-05 点击: [收藏] [投稿]




--------------------------------------------------------------------------------


指令:die
语法:dieLIST
说明:会把LIST字符串显示出来,并退出程序。常常和$!这个代表错误信息变量一起使用。
示例:open(FILE,"$filename")||die"不能打开文件$!n;如果打开文件失败的话,就会显示出错误的信息,之后再退出程序。



--------------------------------------------------------------------------------


指令:open
语法1:open(filehandle,"$filename")其中$filename是一个指定打开的文件名。
说明:这是一个很常用的函数,可用于文件的打开(readonly)。在CGI程序设计中常常会打开一个文件来读取数据,所以笔者会详加说明这一个函数相关用法。这个filehandle可把它看作在I(INPUT)/O(OUTPUT)之间的一个桥梁,可以利用FILEHANDLE来作出数据读入写出的动作。开始可用OPEN这个函数来打开一个指定的文件,接下来可以用示例:
$filename="usr/abc.txt";
open(FILE,"$filename")||die"不能打开文件$filenamen;#将while($line={
print"$line";
}
close(file);就会把abc.txt这个文件的内容显示出来。

语法2:open(filehandle,"<$filename")
说明:这个语法也可以打开一个存在的文件(readonly)。
示例:
$filesname="usr/abc.txt";
open(file,"<$filename")||die"不能打开文件$filenamen";
@array=print"@array";也会把abc.TXT这个文件的内容显示出来。

语法3:open(filehandle,">$filename")
说明:建立一个新的文件(writeonly),如果已经存在这个文件了,就会把旧文件名覆盖掉。并可用printfilehandle的方式将数据到所打开的文件中。
示例:
$filename="/usr/abc.txt";
open(file,">$filename")||die"不能打开文件$filenamen;
printfile"thisisanewline1n;#n是换行字符
printfile"thisisanewline2n;
close(file);会打数据存在一个新文件中。

语法4:open(filehandle,">>$filename")
说明:数据用附加的方式定入一文件(writeonly),如果指定的文件名不存在的话就会建立一个新的文件。
示例:
$filename="/path/abc.txt";
open(file,">>$filename")||die"不能打开文件$filenamen";
printfile"thisisanewline1n";
printfile"thisisanewline2n";
close(file);
会打数据附加(append)到一个文件(abc.txt)中。

语法5:open(filehandle,"|unixcommand")
说明:就会把在filehandle的数据输入给unix的指令来作处理。
示例:
$mailprog="/usr/ucb/mail";#unix系统上的寄信程序(一定要加绝对路径)
$who="mqingyi@126.com";
$open(file,"|$mailprog$who")||die"打开失败n";
printfile"Iloveyou!n";
printfile"Iwanttoseeyou.n";
close(file);
就会通过unix系统mail的程序,将FILE这个FILEHANDLE的数据内容寄给$who这个变量所指定的收信人。我们可以利用open这个函数来设计一个来信批评CGI应用程序,在本书中的下一章中会有详细的介绍。



--------------------------------------------------------------------------------


指令:close
用法:close(filehandle)
说明:用open这个函数来打开一个filehandle之后,一定要用close批这个函数把所打开的filehandle关闭。
示例:
open(filehandle,"$filename");
close(filehandle);



--------------------------------------------------------------------------------


指令:pack
语法:pack("指定的格式",list)
说明:pack这个函数会将一个list变成所指定的二进制数据格式。在CGI程序分割解码过程中,会用到pack这个函数,所以笔者在此简单介绍这个函数的用法。
示例:$string=pack("c",65);#这时$string="a";将65这个ascii码转换成一个unsigned字符,其中c就是指定要转换成unsigned字符的意思。



--------------------------------------------------------------------------------


指令:read
语法:read(filehandle,$string,length)其中length是代表读入字符串的长度(bytes)。
说明:用read这个函数把filehandle中的数据依指定的字符串长度读入之后指派给$string这个变量。在cgi程序分割解码过程中,如果FORM的传送方式是设定为POST的话,就会将传送的数据设定为标准输入,所以会将数据内容指定给STDIN这个标准输入的filehandle,而CGI环境变量$env{'content_length'}就是代表使用者送出数据内容的长度,因此我们要用read这个函数来取得使用者送出的数据内容。
示例:read(stdin,$buffer,$env{'content_length'});就会将stdin这个标准输入filehandle中的数据依指定的字符串长度读入,再指派给$buffer这个变量。



--------------------------------------------------------------------------------


指令:exit
语法:exit
说明:退出执行的程序。
示例:print"ilovecgin";exit;显示完"ilovecgi"以后,将退出这个程序。


 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:没有了   下一篇:Perl的基本输入输出

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号