Попробуйте этот небольшой эксперимент. Создайте файл Foo.txt
с очень длинной строкой текста (скажем, 500 символов) следующим образом:
// Foo.txt
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...
Теперь введите следующую команду:
$ Get-Content Foo.txt | Select-String "a" | Out-File Foo2.txt
Вы обнаружите, что длинная строка строки имеет были разбиты на более мелкие строки в Foo2.txt
. Длина каждой меньшей линии равна ширине консоли.
Почему Out-File разбивает длинную строку на более мелкую, если вывод не направляется на консоль?
И почему Out-File не разбивает строки для следующей команды?
$ Get-Content Foo.txt | Out-File Foo3.txt