小编for*_*are的帖子

Perl编程和分发

我是Perl编程的新手.我刚刚读完了Llama的书.到目前为止,我已经用Bash编写了脚本,但我想尝试使用Perl,它比Bash脚本更有优势.

我正在创建一个使用许多标准模块(例如Getopt)的脚本和一些不那么标准的模块(例如PerlMagick)

在某些时候,我想分发我的Perl代码,我希望它可以被那些不了解Perl或编程的人使用.显然标准模块应该始终存在(我使用"使用5.010"在一定程度上保证这一点),但是哪些非标准模块?

我想有两种可能性:1)我应该告诉最终用户安装缺少的模块吗?2)我应该创建一个测试模块的安装脚本,如果它们不存在,那么安装它们吗?如果选择了选项2,我应该下载模块并安装它们吗?或者用我的主要代码分发它们?我只是不确定这些事情的礼节是什么......

非常感谢你的所有建议,本

perl perl-module

5
推荐指数
1
解决办法
1323
查看次数

跨旋转监视Perl中的文件内容

下午好,

我有一个小的Perl脚本,基本上模拟tail -f了Minecraft server.log上的功能.该脚本检查某些字符串并以各种方式执行操作.

该脚本的简化版本如下:

#!/usr/bin/perl

use 5.010;
use warnings;
use strict;

my $log = "PATH TO LOG";
my $curpos;

open(my $LOGFILE, $log) or die "Cannot open log file";

# SEEK TO EOF
seek($LOGFILE, 0, 2);

for (;;){
        my $line = undef;

        seek($LOGFILE,0,1);  ### clear OF condition
        for($curpos = tell($LOGFILE); <$LOGFILE>; $curpos = tell($LOGFILE)){
                $line = "$_ \n";


                if($line =~ /test string/i){
                        say "Found test string!";
                }
        }

        sleep 1;
        seek($LOGFILE,$curpos,0); ### Setting cursor at the EOF
} …
Run Code Online (Sandbox Code Playgroud)

perl file

3
推荐指数
1
解决办法
2045
查看次数

在多个脚本中定义公共变量?

我有许多与功能无关的Bash和Perl脚本,但它们的相关之处在于它们在同一个项目中工作.它们在同一个项目中工作的事实意味着我通常指定相同的目录,相同的项目特定命令,每个脚本顶部的相同关键字.

目前,这并没有让我感到困惑,但据我所知,将所有这些值集中在一个地方会更容易,如果有什么变化,我可以更改一次值并让各种脚本接受这些变化.

问题是 - 如何最好地宣布这些价值观?每个脚本中"必需"的单个Perl脚本对Perl脚本的更改要求较少,但不提供Bash脚本的解决方案.使用"key = value"格式的配置文件可能更通用,但要求每个脚本解析配置并有可能引入问题.还有更好的选择吗?使用环境变量?或者Perl可以轻松执行和解释的Bash特定方式?

variables bash perl configuration perl-module

3
推荐指数
1
解决办法
2238
查看次数

标签 统计

perl ×3

perl-module ×2

bash ×1

configuration ×1

file ×1

variables ×1