Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Get-WmiObject win32_share | where {$_.path -like "?:"}
А здесь, получив из WMI список объектов win32_share, мы отбираем лишь те из них, у которых свойство Path подпадает под указанную маску.
Аналогичным образом получаем все процессы, запущенные не из папки Windows и её подпапок, и будто бы завершаем их. Если убрать ключ –whatif, то они будут завершены на самом деле.
ps | where {$_.path –notLike "c:windows*"} | kill -whatif
В этом случае мы используем псевдоним ps для Get-Process и kill для Stop-Process. Но стоп, если просто выполнить команду Get-Process, то мы не увидим свойства Path! И возникает следующий вопрос:
Как узнать какие свойства есть у объекта?
Третья, саsмая полезная команда в PowerShell после Get-Command и Get-Help, это Get-Member. Перенаправив в неё объект (или их коллекцию), можно увидеть свойства и методы, которыми эти объекты обладают. Например, выполнив следующую команду, можно увидеть все свойства объектов типа System.Diagnostics.Process (именно такие нам возвращает команда Get-Process).
Get-Process | Get-Member -MemberType *property
Есть и более наглядный способ посмотреть свойства объекта:
$e = Get-Process explorer
$e | Format-List -Property *
Тут мы сначала помещаем в переменную $e объект, представляющий процесс Explorer, а затем выводим его на экран, форматируя в виде списка с помощью командлета Format-List. Для Format-List можно указать список свойств, которые нужно получить, и в нашем случае это простая маска – *. Короче говоря, все свойства. Можно применять псевдоним и просто опустить имя параметра – так будет значительно короче.
$e | fl *
Упомяну еще о третьем способе. Когда вы наберёте $e и нажмёте клавишу табуляции, – будут перебираться все свойства и методы этого объекта. Листать их в обратную сторону можно сочетанием <Alt> + <Tab>.
Скрипт PowerTab дополняет свойства объектов не хуже Visual Studio
Разумеется, таким же образом можно исследовать и другие объекты: .Net, WMI, COM, ADSI или любые другие.
Как из текстового файла выбрать строки, содержащие определенный текст? И как насчет регулярных выражений?
Уж не знаю, почему разработчики не сделали для командлета Select-String псевдоним grep, но ничего не мешает сделать его самостоятельно:
New-Alias grep Select-String