找到 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 ... 阅读更多

广告