查看原文
其他

Perl学习14之$0,ARGV,use warnings,use stricts使用

pythonic生物人 pythonic生物人 2022-09-11

"pythonic生物人"的第22篇分享



摘要

Perl中$0,ARGV,use warnings,use stricts使用实例


正文开始啦


1、$0,ARGV,use warnings,use stricts使用实例

argv.pl如下:

#!/usr/bin/perluse warnings; #开启该程序报错警告功能,指出错误位置和原因use strict;#perl中编译指令,如果程序不遵守优良的编码风格(例如每一行perl语句末尾加分号;变量前加my等)则执行失败 #die 命令当程序执行错误时,退出程序报错,输出双引号中的内容if(@ARGV != 3){ die "\tNot enough patameters! \tperl $0 a b c\n";} my($i,$index,$value);foreach $i (@ARGV){ print "$i\n";}; #提取ARGV每个元素print "\$0:$0\n";#$0为脚本本身,此处为argv.plwhile(($index,$value) = each @ARGV){#@ARGV依次存入脚本之后传入的参数 print "\$ARGV[$index]=$value\n";};
perl argv.pl a b c
a
b
c
$0:argv.pl
$ARGV[0]=a
$ARGV[1]=b
$ARGV[2]=c
2、关于die的用法一点补充
$!收集报错信息,die后面不加\n 或者加$!时,输出$!收集的信息,看实例:
  • 例如,die1.pl------------推荐这种写法

#!/usr/bin/perluse strict;use warnings; if(@ARGV != 3){        die "\tNot enough patameters!        \tperl $0 a b c:$!";}

perl die1.pl
        Not enough patameters!
                perl die1.pl a b c: at die1.pl line 6.

#以上$!收集信息at die1.pl line 6.

  • die2.pl

#!/usr/bin/perluse strict;use warnings; if(@ARGV != 3){ die "\tNot enough patameters! \tperl $0 a b c:\n";}

perl die2.pl
        Not enough patameters!
                perl die2.pl a b c:

#以上加\n,$!信息不输出

  • die3.pl

#!/usr/bin/perluse strict;use warnings; if(@ARGV != 3){ die "\tNot enough patameters! \tperl $0 a b c:";}

perl die3.pl
        Not enough patameters!
                perl die3.pl a b c: at die3.pl line 6.

#以上不加\n或者$!,默认输出#!的信息



同系列文章

Perl学习13之路径获取模块:Cwd、FindBin和File::Basename

持续更新,欢迎您"关注"、"在看"、"分享"

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存