用Perl语句来代替常用的操作系统命令
http://www.webjx.com 更新日期:2005-02-26 22:27 出处:网页教学网 作者:
虽然许多CGI程序在不同的服务器上都运行得很好,但是还有一个问题,当程序员需要对文件进行拷贝,改名或删除时,他用的是特定的操作系统上的shell命令,而没有采用perl语句。 (例如, system("cp ");) 这样做仅在Unix下行得通,而且,当你把未经检查的变量传给shell时,还将可能产生潜在的安全隐患。
下面是一些Perl语句,可以用来替换常用的操作系统命令,这些语句可以工作于任何操作系统上。
### 删除
unlink("/file.dat");
### 改名
rename("/oldfile.dat","/newfile.dat");
### 拷贝
open(FILE1,"</file1.dat");
open(FILE2,">/file2.dat");
binmode(FILE1);
binmode(FILE2);
while (<FILE1>) { print FILE2; }
close(FILE1);
close(FILE2);
### 设置文件权限
chmod(0777,"/file.dat");
### 创建目录
mkdir("/newdir",0777);
### 删除目录
rmdir("/newdir");
### 当前日期/时间
= scalar localtime(time);
print ;
通过使用上面介绍的这些技巧,你不仅可以节省时间,而且也可以写出更好的程序。
您的评论
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为