Windows “我该如何解决?”;perl不可识别“不可识别”;在窗户上?

Windows “我该如何解决?”;perl不可识别“不可识别”;在窗户上?,windows,perl,Windows,Perl,我已经设置了一个日志文件来接收MySQL慢速查询 但是,我无法解析该文件。Linux使这项任务看起来非常简单。在教程中,它似乎很容易: $ mysqldumpslow -s c -t 10 但是,在Windows中,我不确定如何使用Perl脚本mysqldumpslow.pl运行位于:G:\xampp\Perl\bin中的Perl,该脚本位于:G:\xampp\mysql\scripts中 我试图进入: G:\xampp\mysql\scripts\perl mysqldumpslow-s

我已经设置了一个日志文件来接收MySQL慢速查询

但是,我无法解析该文件。Linux使这项任务看起来非常简单。在教程中,它似乎很容易:

 $ mysqldumpslow -s c -t 10
但是,在Windows中,我不确定如何使用Perl脚本mysqldumpslow.pl运行位于:G:\xampp\Perl\bin中的Perl,该脚本位于:G:\xampp\mysql\scripts中

我试图进入:

G:\xampp\mysql\scripts\perl mysqldumpslow-s c-t 10


命令提示符返回类似“perl不可识别”的内容。错误,您使用了错误的路径

如果perl.exe位于G:\xampp\perl\bin中,而mysql脚本位于G:\xampp\mysql\scripts中,则需要:

> G:\xampp\perl\bin\perl G:\xampp\mysql\scripts\mysqldumpslow.pl -s c -t 10.
当然,这是一种非常迂回的方法,因此,请将perl添加到路径中,并将
cd
添加到正确的目录中,然后运行它:

> set PATH=G:\xampp\perl\bin\;%PATH%  // Note: This can be added in the
                                      // System Control Panel.
> cd /d G:\xampp\mysql\scripts
> perl mysqldumpslow.pl -s c -t 10
或者更好的是,将perl添加到已知的文件类型中

  • 转到资源管理器->工具->文件夹 选项->文件类型
  • 单击“新建”,键入新代码 扩展字段。单击“确定”
  • 在列表中找到PL,单击高级。在“操作”下,单击“新建”
  • 对于操作类型打开,对于“用于执行操作的应用程序”类型:

    G:\xampp\perl\bin\perl.exe-w“%1”%*

  • 单击“确定”

  • 现在,您可以按以下方式运行脚本:

    > mysqldumpslow.pl -s c -t 10
    
    就像在Linux中一样

    快速说明:添加.pl文件作为已知文件类型大致相当于Unix用户添加

    #!/usr/bin/perl -w
    
    到每个perl脚本的开头。在Windows中,只需添加一次


    第二个注意事项:
    -w
    在perl解释器中打开警告。如果愿意,您可以省略
    -w

    如果您的Perl解释器Perl.exe位于
    G:\xampp\Perl\bin
    ,则使用
    G:\xampp\Perl\bin\Perl.exe
    。为了方便从任何地方调用Perl解释器,可以将path
    G:\xampp\Perl\bin
    添加到path环境变量中。要调用Perl脚本,请尝试以下操作

    c:\> G:\xampp\perl\bin\perl.exe G:\xampp\mysql\scripts\mysqldumpslow.pl
    

    我使用以下命令修复了此错误:

    set PATH=C:\perl\bin;%PATH%
    

    您是否尝试过
    G:\xampp\mysql\scripts\perl.exe
    ?知道这个错误的含义吗?“无法在第8行的@INC(INC contains:)中找到strict.pm。”第8行显示“使用strict”。它无法加载
    strict.pm
    perl模块
    @INC
    是perl查找模块的地方。当前,您的已设置为当前目录“”。有关更多信息,请参阅,或提出新的单独问题。我在此处发布了另一个问题: