Самый простой способ прочитать все строки из всех файлов в каталоге в PowerShell
-
23-09-2019 - |
Вопрос
Это выражение, кажется, работает:
gci . | % { gc $_}
Это также, кажется, также работает (я подозреваю, что это немного медленнее):
gci . | Select-String .
Есть ли лучший способ написания выражения, чтобы выбросить все строки из всех файлов в каталоге?
Спасибо
Решение
Что ж, вы не хотите бросать каталоги в Get-Content. Попробуйте это, чтобы отфильтровать Dirs:
Get-ChildItem | Where {!$_.PSIsContainer} | Get-Content
или с помощью псевдонимов:
gci | ?{!$_.PSIsContainer} | gc
Также обратите внимание, что get-content принимает имя файла в качестве входа трубопровода, поэтому вам не нужен командлет Foreach-object. Вы можете трудиться непосредственно для получения контента.
Другие советы
Не так ли?
gc * -ea SilentlyContinue
Не связан с StackOverflow