找到 449 篇文章,关于编程脚本

Perl 中的正则表达式特殊变量

Mohd Mohtashim
更新于 2019年11月29日 11:52:35

633 次查看

Perl 中有各种正则表达式特殊变量。我们在下面的表格中列出了它们:-$digit包含上次匹配模式中对应括号集匹配的文本。例如,$1 匹配上一个正则表达式中第一个括号集中包含的内容。$&上次成功模式匹配匹配的字符串。$MATCH$`上次成功模式匹配之前匹配的字符串。$PREMATCH$'上次成功模式匹配之后匹配的字符串。$POSTMATCH$+上次搜索模式匹配的最后一个括号。如果您不知道哪个... 阅读更多

Perl 中的全局特殊变量类型

Mohd Mohtashim
更新于 2019年11月29日 11:51:07

321 次查看

Perl 中有各种全局特殊变量。我们根据它们的用途和性质将它们列在不同的块中:全局数组特殊变量@ARGV包含脚本的命令行参数的数组。@INC包含查找要由 do、require 或 use 结构计算的 Perl 脚本的位置列表的数组。@F当给出 -a 命令行开关时,输入行被拆分到的数组。全局哈希特殊变量%INC包含每个已通过 do 或 require 包含的文件的文件名的条目。%ENV包含您当前环境的哈希。%SIG用于设置信号... 阅读更多

Perl 中的 confess 函数

Mohd Mohtashim
更新于 2019年11月29日 11:49:28

1K+ 次查看

Perl 中的 confess 函数类似于 cluck;它调用 die,然后打印一直到源脚本的堆栈跟踪。package T; require Exporter; @ISA = qw/Exporter/; @EXPORT = qw/function/; use Carp; sub function {    confess "Error in module!"; } 1;当从如下脚本调用时:−use T; function();它将产生以下结果:−Error in module! at T.pm line 9    T::function() called at test.pl line 4

Perl 中的 croak 函数

Mohd Mohtashim
更新于 2019年11月29日 11:47:44

3K+ 次查看

Perl 中的 croak 函数等效于 die,除了它向上报告一个级别的调用者。与 die 一样,此函数还在向 STDERR 报告错误后退出脚本:−package T; require Exporter; @ISA = qw/Exporter/; @EXPORT = qw/function/; use Carp; sub function {    croak "Error in module!"; } 1;当从如下脚本调用时:−use T; function();它将产生以下结果:−Error in module! at test.pl line 4与 carp 一样,关于根据 warn 和 die 函数包含行和文件信息的相同基本规则适用。

Perl 中的 cluck 函数

Mohd Mohtashim
更新于 2019年11月29日 11:46:36

814 次查看

Perl 中的 cluck 函数是一种增强的 carp,它遵循相同的基本原理,但还会打印导致调用该函数的所有模块的堆栈跟踪,包括有关原始脚本的信息。package T; require Exporter; @ISA = qw/Exporter/; @EXPORT = qw/function/; use Carp qw(cluck); sub function {    cluck "Error in module!"; } 1;当从如下脚本调用时:−use T; function();它将产生以下结果:−Error in module! at T.pm line 9    T::function() called at test.pl line 4

Perl 中的 carp 函数

Mohd Mohtashim
更新于 2019年11月29日 11:44:40

911 次查看

Perl 中的 carp 函数是 warn 的基本等效项,它将消息打印到 STDERR,而不会实际退出脚本并打印脚本名称。package T; require Exporter; @ISA = qw/Exporter/; @EXPORT = qw/function/; use Carp; sub function {    carp "Error in module!"; } 1;当从如下脚本调用时:−use T; function();它将产生以下结果:−Error in module! at test.pl line 4

Perl 模块中的错误

Mohd Mohtashim
更新于 2019年11月29日 11:42:46

149 次查看

在使用 Perl 编程时,我们应该能够处理两种不同的情况:报告模块中引用模块的文件名和行号的错误 - 这在调试模块时很有用,或者当您专门想要引发与模块相关的错误(而不是与脚本相关的错误)时。报告模块中引用调用者信息的错误,以便您可以调试导致错误的脚本中的行。以这种方式引发的错误对最终用户很有用,因为它们突出了与调用脚本的源行相关的错误。warn 和 die ... 阅读更多

Perl 中的 unless & die 函数

Mohd Mohtashim
更新于 2019年11月29日 11:41:22

902 次查看

Perl 中的 unless 函数是 if 的逻辑相反:语句可以完全绕过成功状态,并且仅在表达式返回 false 时执行。例如:−unless(chdir("/etc")) {    die "Error: Can't change directory - $!"; }unless 语句最适合用于当您只想在表达式失败时引发错误或备选方案时。该语句在用于单行语句时也有意义:−die "Error: Can't change directory!: $!" unless(chdir("/etc"));这里,只有当 chdir 操作失败时我们才会 die。die 函数die 函数的工作原理与 warn 相同,除了它还会调用 exit。在... 阅读更多

在 Perl 中创建、删除和更改目录

Mohd Mohtashim
更新于 2019年11月29日 11:39:54

3K+ 次查看

您可以使用 Perl 中的 mkdir 函数创建一个新目录。您需要具有创建目录的必要权限。#!/usr/bin/perl $dir = "/tmp/perl"; # 这会在 /tmp 目录中创建 perl 目录。 mkdir( $dir ) or die "Couldn't create $dir directory, $!"; print "Directory created successfully";删除目录您可以使用 Perl 中的 rmdir 函数删除目录。您需要具有删除目录的必要权限。此外,在尝试删除目录之前,该目录应为空。#!/usr/bin/perl $dir = "/tmp/perl"; # 这会从 /tmp 目录中删除 perl 目录。 rmdir( $dir ) or die "Couldn't ... 阅读更多

在 Perl 中显示所有文件

Mohd Mohtashim
更新于 2019年11月29日 11:26:37

593 次查看

使用 Perl 有多种方法可以列出特定目录中可用的所有文件。首先,让我们使用简单的方法来获取和列出使用 glob 运算符的所有文件:#!/usr/bin/perl # 显示 /tmp 目录中的所有文件。 $dir = "/tmp/*"; my @files = glob( $dir ); foreach (@files ) {    print $_ . ""; } # 显示 /tmp 目录中的所有 C 源文件。 $dir = "/tmp/*.c"; @files = glob( $dir ); foreach (@files ) {    print $_ . ""; } # 显示所有隐藏文件。 $dir = "/tmp/.*"; @files ... 阅读更多

广告