Perl 脚本的特点

    
    本章介绍如何使用Perl DBI 与MySQL接口。我们不讨论DBI 的基本原理或体系结构。有关DBI 这些方面的信息(特别是与C 和PHP API 的比较),请参阅第5 章。
    本章的举例动用了样例数据库samp_db,使用了学分保存方案和历史同盟需要的表。想要从本章中取得最大收获,最好了解一些有关Perl 的知识。如果不想这样,那么通过拷贝这里看到的样例代码,也能有所帮助,并可以编写自己的脚本,不过找一本好的Perl 书,可能仍是一件非常有价值的投资。有这样一本书,名为《Programming Perl 》,第二版是由Wa l l、C h r i s t i a n s e n、Schwartz 和P o t ter(O’ Reilly出版社19 9 6出版)撰写的。(机械工业出版社1999年已出版了《Perl 5编程详解》—编者注。)
    DBI 的当前版本为1. 13,但是此处的大部分介绍也可用于更早的1.xx 版本。请注意,对所介绍的早期版本中没有出现的特性作了说明。
    MySQL的DBI 需要至少为5.004_05 的Perl 版本。另外还必须安装Msql-Mysql 模块和Data-Dumper Perl 模块,以及MySQLC 客户机库和一些头文件。如果计划编写基于Web 的DBI 脚本,则要使用CGI.pm 模块。本章中,这个模块用于与Apache Web 服务器的连接。如
果需要获得这样的程序包,请参阅附录A。该附录中也给出了获得本章开发的样例脚本的说明。可以下载这些脚本,不必自己键入。
    很大程度上,本章介绍Perl DBI 的方法和变量只是出于讨论的需要。至于所有方法和变量的更全面的列表,请参阅附录G。如果要使用DBI 的任何部分,可以用该附录作为进一步研究的背景材料。可通过运行下面的命令来得到联机文档:
    % perldoc DBI
    % perldoc DBI::FAQ
    % perldoc DBI::mysql    在数据库驱动程序( DB D)级,MySQL的驱动程序建立在MySQLC 客户机库的基础之上,因而具有它的某些特性。有关该库的详细信息,请参阅第6 章。

    Perl 脚本为文本文件,可以利用任何文本编辑器来创建它们。本章所有的Perl 脚本都遵从UNIX 的约定,第一行以‘ #!’开始,接着是执行这个脚本要使用的程序路径名。第一行如下所示:
    #! /usr/bin/perl
    如果在您的系统中,路径名不是Perl,如为/usr/local/bin/perl5 或/ o p t / b i n / per l,则需要修改‘# !’行。否则,Perl 脚本不能在系统中正确运行。
    在‘#!’之后含有一个空格,这是因为有的系统会将‘ #! /’解释为4 个字节的怪异数字,所以如果没有空格,则忽略这一行,这样,会将相应脚本作为外壳脚本来对待。
    在UNIX 系统中,应该使Perl 脚本成为可执行文件,以便只要键入其名称就可执行。为使脚本成为可执行文件,对文件模式做如下更改即可:
    % chmod +X script_name
    如果在Windows 下使用ActiveState Perl,则不必使脚本成为可执行文件,可如下运行一个脚本:
    C:\> perl script_name

时间: 2024-08-04 04:20:40

Perl 脚本的特点的相关文章

perl脚本备份还原sql server

写了一个perl脚本灵活来备份或还原. 1.将config.txt保存到c盘根目录 username:sa password:passwd123! 根据实际情况修改该文件内容 2.执 行bcp.pl #!C:\Perl64\bin #通过BCP备份和还原SQLSERVER指定的表 use 5.014; #加载用户和密码配置文 件 my $username ; my $passwd; ##获取用户名 my $dir="c:"; $dir=$dir."/"; my $f

crontab不执行perl脚本分析

在新装的Linux服务器上部署了一个作业监控磁盘空间并提前告警,在shell脚本里面调用了一个perl脚本发送告警邮件.结果出现了一个很奇怪的现象:如 果手工执行该脚本/home/oracle/scripts/disk_capatiy_alarm.sh能发出告警邮件,但是在crontab里面发现 脚本没有发出告警邮件.检查了/var/log/cron后发现该作业执行了.最后发现shell执行了,但是perl脚本没有执行.搜索了相关资料后, 了解到一般出现这种情况要么是因为环境变量,要么是因为使用

argv-初次接触perl脚本,请问下面的代码怎么理解

问题描述 初次接触perl脚本,请问下面的代码怎么理解 #!/usr/local/bin/perl $pattern=$ARGV[0];$count=$pattern=~s/(?<[^>]*>)//g;@ARGV=qw# #;$print='print ""'; 解决方案 #!/usr/local/bin/perl 这句如同*nix操作系统中用来指定脚本解释程序的位置./usr/local/bin/perl是Perl语言的脚本解释器程序.$pattern=$ARGV[

Perl脚本实现递归遍历目录下的文件_perl

#!/usr/bin/perl -w use strict; use File::Spec; local $\ ="\n";#当前模块的每行输出加入换行符 my %options; #目录路径 $options{single_case} = '/home/jiangyu/src/pl/Example'; my @cases; if (-d $options{single_case}) {#判断目录是否存在 my @files; my $dh; push(@files, $options

Java调用telnet连接到Unix环境的服务器然后再执行perl脚本

问题描述 各位大侠,本人有一个难题,想请教大家,如下:要用Java调用telnet连接到Unix环境的服务器然后再执行perl脚本,并且能够把执行perl脚本的信息返回给前端展示出来.因为本人之前从来没有做过这个所以向大家求救,谢谢!!! 解决方案 解决方案二:不知道但顶一下,闲着无聊解决方案三:方法1.找一个telnet功能的java代码,自然有执行unix命令的方法,也有相应的获取unix回显的方法方法2.有一个类,叫什么我忘了.专门执行命令行命令的,我当时做的时候,是执行windows下的

FTP自动上传文件的perl脚本以及配置文件_perl

<?XML:NAMESPACE PREFIX = O /> 本应用程序设计的几个基本理念是:工具箱再利用:尽可能利用已有的工具:简化运行步骤:不引入过多的业务逻辑,满足的需求越简单越好. 所以,我们定义了本应用程序依赖于以下几个工具的运行:ActivePerl-5.8.4.810-MSWin32-x86Upload.plUpload.config 我们将主要的执行逻辑都放在Perl源文件Upload.pl中了,配置文件为Upload.config. 这个perl文件将执行的任务是, 按照指定的

perl脚本实现限制ssh最大登录次数(支持白名单)_perl

ssh limit perl脚本主要作用: 1.限制一个ssh用户的最大登录数为n,n可自定义. 2.支持白名单,如root.test登录不受限制. 如果一个ssh用户的最大登录数超过指定数字,则后登录的会把先前登录的踢掉,以此达到控制登录数的目的. 该脚本需要主机支持perl,如果没有,可yum安装. 脚本源码: #!/usr/bin/perl -w use strict; #white list my @ALLOW_USERS = qw{ test root lulu1 }; #the ma

Perl脚本实现检测主机心跳信号功能_perl

使用串口通信,在备机端使用如下脚本检测来自主机的心跳信号,一旦未接受次数超过指定记数,备机认为主机DOWN机,自动设置为主机的网络参数,顶替主机提供服务. # ! perl -w use strict; use Win32 :: SerialPort; my $port = ' COM2 ' ; # serail port name registried in OS my $count = 0 ; # count number of heartbeat-receiving failture my

Perl脚本检测一个域名是否有效_perl

脚本功能:通过ICMP Ping或TCP/SYN探测指定的域名,探测前检测域名是否有效. file: check.host.pl #!/usr/bin/perl use strict; use Net::Ping; use Net::DNS; use Time::HiRes qw(); $| = 1; my $DEFAULT_TIMEOUT = 2; my $PING_TIMEOUT = 2; my $DNS_TIMEOUT = 3; ### 查询域名是否有效 sub queryDomain {