探索强大的Perl编程:从入门到网站链接检查实践
1. Perl简介
Perl是由Larry Wall在20世纪80年代末发明的。当时,他需要一种比shell脚本功能更强大,但又不像C等结构化语言那样正式的编程语言,于是Perl应运而生。Perl是一种让人又爱又恨的语言,很少有人对它持中立态度。不过,它作为一种极其有用的胶水语言,被全球的系统管理员广泛使用。
在Mac OS X系统中,通常已经安装了最新版本的Perl。可以使用以下命令来验证安装情况:
perl –v如果没有得到预期的响应,或者使用的是非常旧的版本(如Perl 4),可以使用Fink来更新。
Perl的一个特点是“惯用弹性”,即可以使用不同的语法结构和命令来完成相同的任务。例如,在餐厅结账离开时,可以通过挥手示意服务员、直接索要账单或拿出钱包放在桌上等不同方式达到目的。在Perl中也是如此,很多情况下,完成一项任务有多种不同的方法,这就是所谓的“有不止一种方法可以剥猫皮”。这也导致当多个Perl程序员一起解决一个问题时,往往会得到至少三种不同的解决方案。
2. 网站链接检查问题
大约六七年前,有客户询问是否有工具可以快速检查网页上的链接。当时有很多链接检查工具(免费和付费的都有),但我借此机会编写了一个20行左右的Perl脚本来完成这项任务。
这个脚本需要满足以下要求:接受一个URL作为命令行参数,访问该URL,检查找到的所有链接,并跟踪所有站内链接以确定它们是否可达,最后生成一份报告。
为了完成这个任务,需要借助一