Perl语法的基本规则
因为是比较凌乱的用法规则收集,所以能看懂则看,不能看懂也无所谓。以后也会遇到。
- Perl脚本第一行使用
#!。Perl的后缀名一般为".plx"或".pl",运行时使用perl NAME.plx即可
例如,1.plx内容如下:
#!/usr/bin/perl
print "hello world\n"
执行该脚本:
shell> perl 1.plx
- 注释。Perl只支持"#"注释,所以只支持单行注释、行内到结尾注释
# comment
print "hello world\n" # comment
Perl脚本中,除了最后一行,每行都需要以";"结尾,除非是注释行
Perl中不需要对变量进行声明,可以直接赋值、引用
$var=12;
print $var;
- use指定使用某个版本的perl,如5.10版本。注意,use中是5.010而不是5.10,
use 5.10会被perl认为是5.100版
use 5.010;
如果指定更细致的小版本号,如5.10.1版,则:use 5.010001;。
- 最好都加上
use utf8语句
use utf8;
- 最好在每个Perl程序中加上
use strict语句,这在后面写稍大一点的Perl程序基本上是一种规范
该功能让Perl编译器以严格的态度对待Perl程序,如果定义了变量却未使用过,或者引用了未定义过的变量,都会编译错误。
use strict;
- 可以加上warning信息进行调试
use warnings;
或者perl -w,或者在Perl脚本中:
#!/usr/bin/perl -w
- Perl中可以通过反引号来执行操作系统中的命令
$var=`date +"%F %T"`
print $var
- Perl中调用自带的内置函数时,可以使用括号传递参数,也可以省略括号
例如,调用print函数:
print("hello world\n");
print "hello world\n";
- Perl中的ENV:Perl可以通过ENV这个hash直接访问操作系统的环境变量
print $ENV{PATH}; # 输出操作系统的PATH环境变量
如果Perl想访问操作系统中某个变量,可以直接在操作系统中设置,然后通过Perl访问:
$ myvar=2;export myvar;
print $ENV{myvar};
- Perl中token之间如果是不同的命名类型,则中间的空格分隔符号可以省略
主要体现在函数和参数之间的空格。
print"abc","def\n"; -> print "abc","def\n"
print$var; -> print $var
my$var="abc"; -> my $var
print~~length$var -> print length $var
显然,参数部分的首字符如果是数值、下划线或字母,则会被当作函数名的一部分进行解析,这是错误的省略方式:
print1+3;
Perl语法的基本规则的更多相关文章
- Perl 语法 - 基础
perl语言的核心是正则表达式,在文本处理上非常有优势,与python类似,但语法不同,perl的语法很灵活,用多了才会觉得好用. 常用知识点总结: perl语法类似于C语言(perl源于Unix), ...
- perl 语法速查
同时学perl.python和shell脚本会很容易将它们的语法搞混,本文主要是一个个人的总结,方便要用时的查询. perl基本语法.安装.帮助文档 文件头格式: #!/usr/bin/perl us ...
- Perl 语法 - 高级特性
总结: q().qq().qw(同单引号).qx{牢记是花括号},分别是单引号.双引号.创建字符串列表 和 捕获命令输出. 第9学时 其他函数和运算符 一件事情可以使用多种方法完成. 有哪些其他的 ...
- 一个linux内核编译时遇到的perl语法导致的编译问题解决
在编译linux内核时,遇到了一个比较诡异的问题.具体log如下: Can't locate strict.pm in @INC (you may need to install the strict ...
- 读写生信流程必备的 Perl 语法
最早就是写Perl的,后来来到公司转Python,现在又要负责流程了,开始重拾Perl,当然是借鉴别人现有的语法,我再重新组合. 基本语法就不介绍了,参照我之前文章 Perl 模块 use str ...
- perl 语法速查 | 模块安装
perl -MCPAN -e shell install Bio::SeqIO 或者直接perl -MCPAN -e 'install Excel::Writer::XLSX' 用cpan装不上,编译 ...
- Perl系列文章
0.Perl书籍推荐 Perl书籍下载 密码:kkqx 下面是一些我学习Perl过程中读过完整的或部分章节的觉得好的书. 入门级别1:<Perl语言入门>即小骆驼 入门级别2:<In ...
- 精通Perl(第2版)
精通Perl(第2版)(通往Perl大师之路必读经典书籍,体现了一种编程思维,能够帮你解决很多实际的问题) [美]brian d foy(布瑞恩·D·福瓦)著 王兴宇 刘宸宇 译 ISBN 978 ...
- perl 学习杂项笔记
### 由于perl 语法属于很自由的那种, 建议出现错误的时候打开 -w 或者使用 -Mdiagnositics 试一下 ### 如何调试 perl程序 http://www.ibm.com/dev ...
随机推荐
- Elasticsearch System Call Filters Failed to Install
Elasticsearch starts to run, error occurs: : system call filters failed to install; check the logs a ...
- Java中的一个类型转换问题
一.Object转Integer Java中hibernate或者ResultSetHandler查询sql语句, 返回的object类型其实是Long类型, 而不是Integer类型, 因此此时直接 ...
- Spring——事务
Spring事务 事务的ACID特性 原子性(Atomicity):在事务中的操作,要么都执行,要么都不执行! 一致性(Consistency):数据从一种状态,同时到达另一种状态. 持久性(Dura ...
- windows mysql zip 安装
https://www.cnblogs.com/iathanasy/p/8461429.html
- android 图片内存管理
图片对象: drawable bitmap etc.图片对象在Android上该缓存吗?什么时候缓存?怎么缓存?缓存后使用时怎么取出?怎么销毁?什么时候销毁? bitmap对象(new出来的) :需要 ...
- Linux下Oracle表空间及用户创建
记录详细过程以备使用 Connected to Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 Connected as sys@i ...
- java继承多态和抽象类接口
一.继承 通过扩展一个已有的类,并继承该类的属性和行为,来创建一个新的类.已有的称为父类,新的类称为子类(父类派生子类,子类继承父类).(1)继承的优点: ①代码的可重用性: ②父类的属性 ...
- Android Studio 调试各种国产手机经验总结
为何加上“国产”二字呢,因为目前测试时就国产手机存在的安装问题多,而且都很奇葩,不得不说对于开发者时很不友好的. 下面就是个人总结的针对不同的机型调试时出现的问题做的总结: 1.VIVO 手机 解决方 ...
- SharedPreferences解析
一.概述 SharedPreferences(简称SP)是Android中很常用的数据存储方式,SP采用key-value(键值对)形式,主要用于轻量级的数据存储,尤其适合保存应用的配置参数,但不建议 ...
- 微信小程序我的界面
前言 感谢! 承蒙关照~ 微信小程序我的界面 界面效果: 界面结构: 小程序代码: 我们先看me.json代码 { "navigationBarTitleText": " ...