Perl 命令行参数2025年3月17日 | 阅读 3 分钟 命令行参数以与任何其他语言相同的方式发送到 Perl 程序。@ARGV 数组保存命令行参数。即使使用 "use strict",也无需使用变量。默认情况下,此变量始终存在,并且来自命令行的值会自动放置在此变量中。要访问脚本的命令行参数,您只需要从 @ARGV 数组中读取即可。 Perl 允许使用 @ARGV 数组作为文件名,使用 <>。当从 <> 读取时,$ARGV 包含当前文件的名称。 @ARGV 数组元素@ARGV 数组与普通数组的工作方式相同。它的第一个参数将是 $ARGV[0],第二个参数是 $ARGV[1],依此类推。 Perl 命令行参数示例让我们看一个简单的例子来打印命令行参数。在本例中,我们将使用用户的姓名作为命令行参数打印欢迎消息。我们需要两个命令行参数,即用户的名字和姓氏。 步骤1 在您的系统中创建脚本 welcome.pl。 在上面的脚本中,首先它将检查是否提供了两个命令行参数。如果没有,它将给出错误的输入错误。如果是,它将分别处理这些参数作为 $ARGV[0] 和 $ARGV[1]。 步骤2 在您的控制台中运行脚本,命令为 perl welcome.pl Christian Grey 注意:在给出此命令之前,请确保您位于包含您的脚本 welcome.pl 的目录中![]() 这是您将在控制台中获得的输出。 步骤2 在您的控制台中运行脚本,命令为 perl welcome.pl Christian 在这里,我们只从命令行传递一个参数。 ![]() 在输出中,您可以看到传递一个参数的错误输入消息。 使用循环的 Perl 命令行参数示例现在我们将运行一个循环来打印命令行参数。在此示例中,您可以输入任意数量的参数。 步骤1 在您的系统中创建脚本 loop.pl。 步骤2 在您的控制台中运行脚本,命令为 perl loop.pl a b c d e f g h ![]() 查看上面的输出,它还显示了命令行上传递的总参数。在这里我们传递了 8 个参数。 Perl Getopt::Long简单的命令行选项使用 ?s 选项完成。复杂的命令行选项使用 Getopt::Std 和 Getopt::Long 完成。 Getopt 代表 GetOptions。它根据我们给它的配置处理 @ARGV 的内容。它根据处理返回 true 或 false 值。 示例 在本例中,我们将从命令行获取用户的年龄。 我们声明了一个变量 $x,它将存储插入到标准控制台的 --from 中的值。from=s 声明一个名为 --from 的命令行参数,后面跟一个字符串。它进一步映射到变量 $x。反斜杠 (\) 意味着我们正在传递对变量的引用。 只有当我们通过传递看起来像参数名称并以 (-) 开头但未在此脚本中声明的内容来运行此脚本时,此脚本才会切换到 die 部分。 现在,我们将运行此程序。 输出 ![]() 查看输出,在控制台中输入年龄后,我们得到了上面的输出。 下一主题Perl 创建 Excel 文件 |
我们请求您订阅我们的新闻通讯以获取最新更新。