Как исправить "perl не распознается" в Windows?

Я настроил файл журнала, чтобы забрать медленные запросы MySQL.

однако мне не удалось проанализировать файл. Linux делает эту задачу очень простой. В учебниках это кажется так же просто, как:

 $ mysqldumpslow -s c -t 10

в Windows, однако, я не уверен, как вы запускаете Perl, расположенный в:G:xamppperlbin С помощью скрипта Perl mysqldumpslow.pl, расположен в:G:xamppmysqlscripts

Я попытался ввести:

G:xamppmysqlscriptsperl mysqldumpslow-s c-t 10

командная строка возвращает что-то вроде "perl не распознается".

3 ответов


Errm, вы используете неправильные пути.

если 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 к известным типам файлов.

  1. перейдите в Проводник - > инструменты - > папка Опции -> тип файла.
  2. нажмите "Создать", введите pl для поле расширения. нажимать OK.
  3. найти PL в списке, нажмите кнопку Дополнительно. В разделе действия Нажмите кнопку "Создать".
  4. для действий типа open, для "приложения, используемого для выполнения действия" введите:

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

  5. Нажмите Ok.

теперь вы можете просто запустить скрипт:

> mysqldumpslow.pl -s c -t 10

как в Линукс.

краткое Примечание: добавление .PL-файлы как известные типы файлов примерно эквивалентны Unix - людям, добавляющим

#!/usr/bin/perl -w

до начала каждого скрипта perl. В Windows вам нужно добавить его только один раз.

второй Примечание:-w включает предупреждения в интерпретаторе perl. Вы можете оставить -w если вы хотите.


я исправил эту ошибку, используя команду:

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

если ваш интерпретатор Perl perl.exe находится в G:\xampp\perl\bin, а затем использовать G:\xampp\perl\bin\perl.exe. Для удобства вызова интерпретатора Perl из любого места вы можете добавить путь G:\xampp\perl\bin в переменную среды PATH. Чтобы вызвать скрипт Perl, попробуйте это

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