Сценарий Powershell для запуска нескольких входных текстовых файлов

#powershell #text #spaces

#powershell #текст #пробелы

Вопрос:

Я пытаюсь удалить пробелы из входного текстового файла с помощью сценария PowerShell.

У меня есть сотни, если тысячи текстовых файлов, в которых я должен удалить пробелы. Я написал код для удаления пробелов. Он отлично работает для одного текстового файла, но я хочу выполнить более одного файла.

 gc C:test3.txt | where {$_ -ne ""} > C:testout.txt
 

В приведенном выше примере у меня есть больше входных файлов, таких как 4.txt , 5.txt , 6.txt и т.д. Я хочу выполнить все файлы за один раз, удалить пробелы и написать 4out.txt , 5out.txt , 6out.txt , и т.д. в другую папку.

Комментарии:

1. Пожалуйста, прекратите использовать «lakh» в своих вопросах. Мы не все из Индии и не понимаем индийских слов

Ответ №1:

Это должен быть просто случай перебора ваших файлов и запуска той же строки, которая у вас уже есть.

Добавьте несколько try-catch, если хотите быть в безопасности.

 $InputFiles = Get-ChildItem 'C:test'
$OutputPath = 'C:testout'

ForEach($File in $InputFiles) {
    Get-Content $File |
        Where-Object {$_ -ne ''} |
            Out-File (Join-Path -Path $OutputPath -ChildPath $File.Name)
}