Ошибка при перенаправлении stdout и stderr скрипта powershell

StackOverflow https://stackoverflow.com/questions/1422501

  •  07-07-2019
  •  | 
  •  

Вопрос

Скрипт работает нормально, когда stdout / stderr не перенаправляются.

Когда я добавляю перенаправление как stderr, так и stdout, я получаю следующую ошибку:Как я могу избежать этого?

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0 19.4M    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
 81 19.4M    0     0   81 15.9M      0  54.5M --:--:-- --:--:-- --:--:-- 55.8M
100 19.4M    0     0  100 19.4M      0  14.2M  0:00:01  0:00:01 --:--:-- 14.3M
100 19.4M    0     0  100 19.4M      0  8428k  0:00:02  0:00:02 --:--:-- 8454k
100 19.4M    0     0  100 19.4M      0  5924k  0:00:03  0:00:03 --:--:-- 5937k
100 19.4M    0     0  100 19.4M      0  4567k  0:00:04  0:00:04 --:--:-- 4575k
100 19.4M    0    50  100 19.4M     10  4291k  0:00:04  0:00:04 --:--:--  835k
out-lineoutput : The OS handle's position is not what FileStream expected. Do not use a handle simu
ltaneously in one FileStream and in Win32 code or another FileStream. This may cause data loss.
    + CategoryInfo          : NotSpecified: (:) [out-lineoutput], IOException
    + FullyQualifiedErrorId : System.IO.IOException,Microsoft.PowerShell.Commands.OutLineOutputCom 
   mand
Это было полезно?

Решение

Ли Холмс (один из старших разработчиков команды powershell) рассказывает об этом здесь, в своем блоге:

http://www.leeholmes.com/blog/WorkaroundTheOSHandlesPositionIsNotWhatFileStreamExpected.aspx

Это ошибка в PowerShell версии v1.0, и она возникает, когда:

  • команда PowerShell генерирует как обычный вывод, так и вывод с ошибкой
  • вы использовали cmd.exe для перенаправления выходных данных в файл
  • вы использовали cmd.exe для объединения потоков вывода и ошибок

Есть обходной путь.

-Ойсин

Другие советы

Однажды у меня было несколько жестко связанных переходов в каталоге, в которых должен был быть " GetItemChild " применяется и получил ту же ошибку, что и этот вопрос.

Удаление переходов решило проблему.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top