winrs использует backtick в perl зависает

Я запустил следующую команду winrs, используя backtick (``) в скрипте perl,

$result = `winrs -r:<system_name> d:\tmp\transfer_remove_file.bat`

Winrs Windows зависает после выполнения и не возвращает вывод, после того как я закрываю окно, я могу видеть вывод команды winrs.

Поскольку мне нужно захватить результат winrs, я использую backtick, если я использую системный вызов, он не зависает, но я не могу захватить вывод.

Я могу перенаправить вывод winrs в файл и использовать system(), как показано ниже,

system( winrs -r:<system_name> d:\tmp\transfer_remove_file.bat >> testlog.txt )

но при использовании нескольких winrs в одном скрипте и перенаправлении в один и тот же файл, появляется следующая ошибка

процесс не может получить доступ к файлу, потому что он используется другим процессом.

Пожалуйста, помогите мне решить эту проблему

0 ответов

Другие вопросы по тегам