Попробуйте этот небольшой эксперимент. Создайте файл 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