19Aug

Геек школа: формирање учења, филтрирање и упоређивање у ПоверСхелл-у

click fraud protection

У овом издању Геек школе погледамо форматирање, филтрирање и упоређивање објеката у Пипелине.

Обавезно прочитајте претходне чланке у серији:

  • Сазнајте како да аутоматизујете Виндовс ПоверСхелл
  • Учење да користи Цмдлетс у ПоверСхеллу
  • Учење како користити објекте у ПоверСхелл

И остати подешен на остатак серије током цијеле седмице.

Подразумевано Форматирање

Када сам први пут започео са ПоверСхелл-ом, мислио сам да је све магично, али истина је да је потребно само мало времена да разуме шта се дешава испод хаубе.Исто важи и за ПоверСхелл форматни систем.У ствари, ако покренете Гет-Сервице цмдлет, излазни резултат приказује само 3 особине: Статус, Име и ДисплаиНаме.

Али ако цепите Гет-Сервице у Гет-Мембер, видите да објекти СервицеЦонтроллер имају много више од само ова три особина, па шта се догађа?

Одговор је у скривеној датотеци која дефинише како већина уграђених цмдлета приказује свој излаз.Да бисте разумели, укуцајте следеће у схелл и притисните Ентер.

нотепад Ц: \ Виндовс \ Систем32 \ ВиндовсПоверСхелл \ в1.0 \ ДотНетТипес.формат.пс1кмл

instagram viewer

Ако користимо функцију Финд бележнице, можемо брзо прескочити у одељак који детаљно приказује излаз у цмдлету Гет-Сервице тако што тражи СервицеЦонтроллертип.

Изненада можете видети да испод хаубе ПоверСхелл форматира било који објект на Пипелине који је типа СервицеЦонтроллер и креира табелу са три ступца: Статус, Име и ДисплаиНаме.Али шта ако тип са којим се бавите не поседује ставку у тој датотеци или било којој другој датотеци у формату за то?Дакле, уствари је прилично једноставно.Ако објекат који излази из плиновода има 5 или више својстава, ПоверСхелл приказује сва својства објекта у листи;ако има мање од 5 особина, приказује их у табели.

Форматирање ваших података

Ако нисте задовољни са подразумеваним форматирањем неког објекта или типа, можете креирати сопствено обликовање.Постоје три цмдлетс које требате знати да урадите ово.

  • Формат-Лист
  • Формат-Табела
  • ​​Формат-Широки

Формат-Широки једноставно узима збирку објеката и приказује једну особину сваког објекта.Подразумевано ће тражити имовину имена;ако ваши објекти не садрже својство имена, он ће користити прво својство објекта када се својства сортирају по абецеди.

Гет-Сервице |Формат-Виде

Као што видите, она такође подразумева две колоне, иако можете одредити и коју особину желите да користите, као и колико колона желите да прикажете.

Гет-Сервице |Формат-Виде -Проперти ДисплаиНаме -Колумна 6

Ако је нешто подразумевано форматирано као табела, можете увек да је пребаците на приказ листе помоћу командне линије Формат-Лист.Хајде да погледамо излаз у цмдлету Гет-Процесс.

Овај табеларни приказ у суштини одговара оваквим информацијама, али претпоставимо да желимо да је видимо у облику листе.Све што стварно морамо да урадимо је да га усмеримо на Формат-Лист .

Гет-Процес |Формат-Лист

Као што можете видети, само су четири поставке по дефаулту приказане на листи.Да бисте прегледали сва својства објекта, можете користити знак за џокер.

Гет-Процесс |Формат-Лист -Проперти *

Алтернативно, можете изабрати само жељена својства.

Гет-Процес |Формат-Лист-Име задатка, ид

Формат-табела, , с друге стране, узима податке и претвара у табелу.Пошто су наши подаци из Гет-Процеса већ у облику табеле, можемо га користити да би лако изабрали особине које желимо приказати у табели.Користио сам параметар АутоСизе да све податке уклапам на један екран.

Гет-Процес |Назив таблице формат-а, ид -АутоСизе

филтрирање и упоређивање

Једна од најбољих ствари у вези са коришћењем плиновода заснованог на објекту је то што можете у свакој фази филтрирати објекте изван цевовода помоћу команде Вхере-Објецт.

Гет-Сервице |Где-објекат{ $ _. Статус-ек "Руннинг"}

Користећи где је објект у ствари врло једноставан.$ _ представља тренутни објекат цевовода, из којег можете изабрати особину на коју желите да филтрирате.Овде су само држали објекте где је својство Статус једнако Руннинг.Постоји неколико оператора за упоређивање које можете користити у блок-скрипту за филтрирање:

  • ек( једнако)
  • нек( није једнако)
  • гт( Греатер Тхан)
  • ге( више него једнако)
  • лт( Мање од)
  • ле( мање или једнако)
  • ( Вилдцард Стринг Матцх)

Потпуна листа и више информација могу се видети у приблитној концептуалној датотеки помоћи, међутим потребно је мало времена да се навикне на синтаксу Вхере-Обејецт.То је све за овај пут!