【问题标题】:grep a file in perl script [closed]在perl脚本中grep文件[关闭]
【发布时间】:2016-05-13 07:27:25
【问题描述】:

我们使用以下命令来 grep 文件中以特定模式开头的记录:

user@domain>grep ^pattern file_name

现在我想在 perl 脚本中实现相同的功能,并将输出重定向到代码最少的文件(我不介意使用正则表达式)。有人可以帮我弄这个吗。谢谢。

【问题讨论】:

  • perl 支持模式匹配,以及基于文件的迭代和grep。但就目前而言,这个问题几乎无法很好地回答,因为我们实际上并不知道您在寻找什么。

标签: regex perl grep


【解决方案1】:

你可以从类似的东西开始

perl -ne '/^pattern/ && print' file_name >output_file

-n 选项使 Perl 处理循环中的每一行,因此您不需要显式的循环代码。

从那里开始,继续发展。你必须尝试看看什么最适合你。

【讨论】:

    【解决方案2】:

    您需要在 grep 命令中添加P 开关。

    来自 ma​​n grep

    -P, --perl-正则表达式 将 PATTERN 解释为 Perl 正则表达式。这是高度 实验和 grep -P 可能会警告未实现的功能。

    所以你的 grep 应该是

    grep -P "^pattern" filename >output
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-02
      • 2016-03-17
      • 1970-01-01
      • 2016-02-28
      相关资源
      最近更新 更多