【问题标题】:How to read a .conf file in Perl如何在 Perl 中读取 .conf 文件
【发布时间】:2023-04-03 07:05:01
【问题描述】:

我刚刚创建了一个包含一些信息的文本 test.conf 文件。如何在 Perl 上阅读它?
我是 Perl 的新手,我不知道我需要做什么。
我尝试了以下方法:

C:\Perl\Perl_Project>perl
#!/usr/local/bin/perl 
open (MYFILE, 'test.conf'); 
while (<MYFILE>) 
{ chomp; print "$_\n"; } 
close (MYFILE);

我尝试在装有 Windows 7 操作系统的笔记本电脑上安装 Perl,并使用命令行。

【问题讨论】:

  • 在命令行上要坚持的内容很多。将上面的 Perl 程序放在一个文件中,然后使用c:\&gt; perl MyPerlProgram.pl 运行它。此外,如果这是 Windows,shebang 行并没有真正为您做任何事情。
  • 它是我创建的 test.conf 文件.....它不是 test.pl 恐怕我没有明白。
  • 您的程序在做什么让您认为它不起作用?您是否考虑将or die $! 添加到您的open()

标签: perl


【解决方案1】:

不要使用命令行,而是将程序写入文件(您可以使用任何编辑器编写程序,我建议使用Notepad++)并在您拥有@987654323 的同一目录中另存为myprogram.pl @文件。

use warnings;
use strict;

open my $fh, "<", "test.conf" or die $!;
while (<$fh>)
{
    chomp;
    print "$_\n";
} 
close $fh;

现在打开命令提示符并转到您的文件 myprogram.pltest.conf 文件所在的同一路径,然后键入以下内容执行您的程序:

perl myprogram.pl

您可以在程序中提供输入文件的完整路径,并可以通过提供程序的完整路径从命令提示符的任何路径运行程序:

perl path\to\myprogram.pl

旁注:始终在程序顶部使用use warnings;use strict;,并且打开文件始终使用带有三个参数的词法文件句柄进行错误处理。

【讨论】:

    【解决方案2】:

    这是一个扩展评论,而不是一个答案,因为我相信 @serenesat 已经为您提供了执行程序所需的一切。

    当您使用“命令行”Perl 时,它通常是相对简短或琐碎的东西,例如:

    perl -e "print 2 ** 16"
    

    任何超出几行的内容,您最好将其放在一个文件中并让 Perl 运行该文件。您当然可以将更大的程序放在命令行上,但是在返回和编辑行时,它变得比捷径更麻烦。

    此外,-n-p 参数值得您处理流的内容,这意味着您可以执行以下操作:

    perl -ne "print if /oracle/i" test.conf
    

    【讨论】:

      猜你喜欢
      • 2022-12-11
      • 2011-01-09
      • 1970-01-01
      • 2017-08-22
      • 1970-01-01
      • 2014-05-16
      • 2013-05-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多