《perl实例精解》学习笔记第一天

简介:

一,示例一


 
 
  1. #!/usr/bin/perl  
  2. print "what's your name? ";  
  3. chomp($name<STDIN>);  
  4. print "welcome, $name,are you ready learn Perl now? ";  
  5. chomp($response = <STDIN>);  
  6. if ($response eq "yes" or $response eq "y") {  
  7.   print "Great! Let's get started learning Perl by example.\n";  
  8. }  
  9. else {  
  10.  print "O.K. Try again later.\n"  
  11. }  
  12. $now = localtime;  
  13. print "$name,you ran this script on $now.\n";  

解释

01行是标示解释器是perl执行
02用print打印到屏幕输出,perl用print "显示内容";即可
03chomp去掉最后一个字符,即去掉换行符
$ name = < STDIN >是设置一个变量$name,来自标准输入<STDIN>,
需要注意的是perl中的变量是$开头
注意perl的变量无需申明即可使用,非常灵活
运行如下
04和05同理
06是一个if语句判断,格式为

 
 
  1. if (条件1成立){ 
  2. 执行语句1 
  3. else { 
  4. 执行语句2 
$response eq "yes" or $response eq "y"的意思是变量 $response的值为yes,或是y
12是设定一个变量now,来自perl的内建函数localtime
13是显示

perl是一种格式自由的语言,这意味着用户可以在任何位置放置脚本语句,甚至还能让同一个语句跨行出现


 
 
  1. #!/usr/bin/perl 
  2. print "this  
  3.           is 
  4.             a  
  5.               test 
  6.                 !\n"; 
  7. $num=5+4*2; 
  8. $num1=5 + 4 * 2; 
  9. print "$num\n"; 
  10. print "$num1\n"; 

结果如下

可见空白对结果毫无影响,这里的空白包括。空格,制表符以及换行符

二,perl中的注释


 
 
  1. 注释由#开头,无法使用C中的/* */或者C++中的// 

三,执行脚本(习惯把perl程序结尾写为pl,便于和其他区分)


 
 
  1. #perl filename.pl    执行filename.pl 
  2. #perl -c filename.pl 检查语法 
  3. #perl -w filename.pl 运行脚本,并对错误的语法进行提示 
  4. 或者是加执行权限
  5. #chmod +x filename.pl 加执行权限
  6. #./filename.pl 执行脚本

四,命令行使用perl


 
 
  1. -e参数命令行执行perl语句
  2. #perl -e 'print "hello\n";' 
  3. hello  输出hello
  4. -n参数,逐一按行显示
  5. #perl -ne 'print;' /etc/passwd
  6. root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin
  7. -c,如前所述,检查语法
  8. -w,执行并检查语法

后记:学perl有一段时间了,但学的比较零散,在此写个人读书笔记,防止遗忘。



本文转自it你好 51CTO博客,原文链接:http://blog.51cto.com/itnihao/986020,如需转载请自行联系原作者

相关文章
|
算法 数据安全/隐私保护
【密码学】一文读懂Whirlpool
首先呢,祝大家今晚节日快乐,Whirlpool是由Vincent Rijmen(高级加密标准的联合创始人)和Paulo S.L.M.Barreto设计的,后者于2000年首次提出了它。
1382 0
【密码学】一文读懂Whirlpool
|
消息中间件 缓存 NoSQL
Redis经典问题:缓存雪崩
本文介绍了Redis缓存雪崩问题及其解决方案。缓存雪崩是指大量缓存同一时间失效,导致请求涌入数据库,可能造成系统崩溃。解决方法包括:1) 使用Redis主从复制和哨兵机制提高高可用性;2) 结合本地ehcache缓存和Hystrix限流降级策略;3) 设置随机过期时间避免同一时刻大量缓存失效;4) 使用缓存标记策略,在标记失效时更新数据缓存;5) 实施多级缓存策略,如一级缓存失效时由二级缓存更新;6) 通过第三方插件如RocketMQ自动更新缓存。这些策略有助于保障系统的稳定运行。
1034 1
|
IDE 编译器 程序员
深入理解C程序的#include和头文件,让c工程只有.h文件(狗头)
深入理解C程序的#include和头文件,让c工程只有.h文件(狗头)
1488 0
|
Kubernetes 搜索推荐 应用服务中间件
【kubernetes】新版helm3的三大概念+快速指南+自定义charts模板
chart:代表helm包,包含在 Kubernetes 集群内部运行应用程序,工具或服务所需的所有资源定义。 Repository(仓库):用来存放和共享 charts 的地方。 Release :运行在 Kubernetes 集群中的 chart 的实例,一个 chart 通常可以在同一个集群中安装多次,每一次安装都会创建一个新的 release。
700 1
【kubernetes】新版helm3的三大概念+快速指南+自定义charts模板
|
10月前
|
算法 Python
Python 大神修炼手册:图的深度优先&广度优先遍历,深入骨髓的解析
在 Python 编程中,掌握图的深度优先遍历(DFS)和广度优先遍历(BFS)是进阶的关键。这两种算法不仅理论重要,还能解决实际问题。本文介绍了图的基本概念、邻接表表示方法,并给出了 DFS 和 BFS 的 Python 实现代码示例,帮助读者深入理解并应用这些算法。
250 2
|
10月前
|
存储 固态存储 测试技术
电脑性能的影响因素
电脑性能的影响因素【10月更文挑战第31天】
452 2
|
12月前
|
存储 索引 Python
python中的数据容器
python中的数据容器
|
前端开发
CSS中的边框属性:border、border-width、border-color、border-style 详解
CSS中的边框属性:border、border-width、border-color、border-style 详解
1165 44
|
存储 监控 安全
ERP系统中的用户权限与安全管理
【7月更文挑战第25天】 ERP系统中的用户权限与安全管理
899 2

热门文章

最新文章