奇趣技术网 收藏本站
设为主页
商务合作
首页 新闻中心 行业动态 软件新闻 安全资讯 病毒预警 漏洞发布 操作系统 Dos Win9x Win2000 WinXP Win2003 WinVista Linux Unix
数据库 DB2 Access MSSQL MySQL Oracle Sybase 编程技术 ASP PHP JSP CGI/Perl XML .Net C/C++/C# VB VC Delphi Java 汇编
安全技术 安全教学 工具介绍 漏洞利用 病毒防范 入侵检测 防火墙 安全防范 汉化破解 攻击实例 加密解密 技术论坛
中华网络安全联盟 >> 程序开发 >> Perl >> 用Perl语句来代替常用的操作系统命令
程序开发
Asp
PHP
JSP
CGI/Perl
XML
.Net
C/C++/C#
Visual Basic
Visual C++
Delphi
Java
汇编语言
  • LB5000XP论坛配合SERV

  • 获取随机的由大小写字

  • Perl操作Mysql数据库

  • Perl在NT下的快速简便

  • 用Perl制作页面计数器

  • 用 perl 实现文件上传

  • perl 域名查询程序

  • 在Linux下访问MS SQL 

  • 用Perl语句来代替常用的操作系统命令
    字体:

    中华网络安全联盟    作者:佚名    来源:网络转载    时间:2006-3-21


    虽然许多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;

     

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

    字体:
     
    设为主页 收藏本站 联系我们 友情连接 商务合作 网友留言
    Copyright©2006-2008 中华网络安全联盟 All rights reserved.