动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
  
   Cgi/Perl → 阅读文章

 用Perl语句来代替常用的操作系统命令

作者来源: 
阅读 1486 人次 , 2006-3-29 4:02:00 


虽然许多cgi程序在不同的服务器上都运行得很好,但是还有一个问题,当程序员需要对文件进行拷贝,改名或删除时,他用的是特定的操作系统上的shell命令,而没有采用perl语句。 (例如, system("cp $file1 $file2");) 这样做仅在unix下行得通,而且,当你把未经检查的变量传给shell时,还将可能产生潜在的安全隐患。

下面是一些perl语句,可以用来替换常用的操作系统命令,这些语句可以工作于任何操作系统上。

### 删除

unlink("$cgidir/file.dat");

### 改名

rename("$cgidir/oldfile.dat","$cgidir/newfile.dat");

### 拷贝

open(file1,"<$cgidir/file1.dat");

open(file2,">$cgidir/file2.dat");

binmode(file1);

binmode(file2);

while (<file1>) { print file2; }

close(file1);

close(file2);

### 设置文件权限

chmod(0777,"$cgidir/file.dat");

### 创建目录

mkdir("$cgidir/newdir",0777);

### 删除目录

rmdir("$cgidir/newdir");

### 当前日期/时间

$date = scalar localtime(time);

print $date;

 

通过使用上面介绍的这些技巧,你不仅可以节省时间,而且也可以写出更好的程序。

 
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:用 perl 实现文件上传
· 下一篇:用Perl制作页面计数器
· CGI教程(7)解码数据发送给CGI脚本之二
· 用Perl语言进行Socket编程之四
· 访问标准CGI变量
· CGI教学:CGI常用环境变量
· 获取随机的由大小写字母和数字组成的八位密码


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077