|   
 UID1 威望1240 点 金钱24019 金币 点卡317 点 
 | 
1#
 发表于 2005-8-25 20:06 
 | 只看该作者 
 用Perl语句来代替常用的操作系统命令
| 作者:keendom email: keendom@sina.com
 日期:00-6-29 13:27:13
 虽然许多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;
 | 
 
| 我是一个呼吸着现在的空气而生活在过去的人
 这样的注定孤独,孤独的身处闹市却犹如置身于荒漠
 我已习惯了孤独,爱上孤独
 他让我看清了自我,还原了自我
 让我再静静的沉思中得到快乐和满足
 再孤独的世界里我一遍又一遍
 不厌其烦的改写着自己的过去
 延伸到现在与未来
 然而那只是泡沫般的美梦
 产生的时刻又伴随着破灭的到来
 在灰飞烟灭的瞬间我看到的是过程的美丽
 而不是结果的悲哀。。。
 
 |  |