Открытый файл найден с помощью Where-Object - PullRequest
0 голосов
/ 18 октября 2018

Я ищу файл, например, файл hosts:

cd c:\Windows\System32
gci -Recurse | ? {$_.Name -eq 'hosts'}

Теперь я хочу открыть файл в notepad, поэтому я попытался:

gci -Recurse | ? {$_.Name -eq 'hosts'} | notepad.exe $_.FullName

Это ошибки,Есть ли способ сделать это, как однострочник?

1 Ответ

0 голосов
/ 18 октября 2018

notepad.exe не принимает конвейер вывод ввод

Get-ChildItem -Recurse -ErrorAction SilentlyContinue |
    Where-Object -FilterScript { $_.Name -eq 'hosts' } |
        Foreach-Object -Process { notepad.exe $_.FullName }

Я бы порекомендовал использовать -Filter для get-childitem для этого.Это значительно улучшит производительность скриплетов.- @ matt

Get-ChildItem -Filter Hosts -Recurse -ErrorAction SilentlyContinue |
    ForEach-Object -Process { notepad.exe $_.FullName }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...