На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Внимательно изучите правила раздела перед созданием темы
0. ПРИЛАГАЙТЕ СВОИ СКРИПТЫ.
1. Прежде чем создать топик, используйте поиск. Возможно это уже обсуждалось.
2. В топике указывайте ОС, режим работы скрипта (CLI|CGI). Очень желателен вывод лог-файлов и того места, куда у вас назначен вывод данных (STDOUT|STDERR)
3. Помните: вы знаете что вы хотите, а форумчане - нет. Поэтому следуйте простому правилу: грамотный развернутый вопрос - грамотный развернутый ответ.
Модераторы: JoeUser, ANDLL
  
    > perl и psexec
      Пишу скрипт на perl, в котором используется утилита psexec, то есть:
      ExpandedWrap disabled
        ...
        use encoding "utf8", STDOUT => "cp866";
        ...
        system("psexec \\xx.xx.xx.xx -u Администратор -p passwd netstat -an");
        ...

      Но выходит ошибка, что имя пользователя или пароль не распознаны, при этом, если запускать psexec не из perl-програмки, а напрямую из виндовой консоли с теми же параметрами, то psexec отрабатывает без ошибок. Подскажите, что нужно подправить в perl-скрипте, чтобы он заработал
        В system будет передано "psexec \xx.xx.xx.xx ...", если нужно "\\xx.xx.xx.xx. ...", пришем "\\\\xx.xx.xx.xx. ..." либо одинарные кавычки.
          извиняюсь, так и было \\\\, но смысл от этого не меняется. Ошибка все равно есть. Использовал Dump
          ExpandedWrap disabled
            "\x{00d0}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{0090}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00d0}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00b4}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00d0}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00bc}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00d0}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00b8}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00d0}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00bd}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00d0}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00b8}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00d1}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{0081}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00d1}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{0082}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00d1}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{0080}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00d0}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00d1}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{0082}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00d0}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00be}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{00d1}" does not map to cp866 at c:\223\test2.pl line 26.
            "\x{0080}" does not map to cp866 at c:\223\test2.pl line 26.
            $VAR1 = '\x{00d0}\x{0090}\x{00d0}\x{00b4}\x{00d0}\x{00bc}\x{00d0}\x{00b8}\x{00d0
            }\x{00bd}\x{00d0}\x{00b8}\x{00d1}\x{0081}\x{00d1}\x{0082}\x{00d1}\x{0080}\x{00d0
            }°\x{00d1}\x{0082}\x{00d0}\x{00be}\x{00d1}\x{0080}';
            Проблема решилась: просто перекодировал perl-файл из UTF-8 в ANSI и psexec стал отрабатывать
            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script Execution time: 0,1041 ]   [ 17 queries used ]   [ Generated: 15.12.19, 21:02 GMT ]