Dlaczego warto czytać pomoc?

ps-helpDziś będzie krótko – o tym dlaczego warto czytać pomoc. PowerShell oferuje ją na każdym kroku i często zanim zaczniemy krzyczeć: “Bug! Bug!” warto sprawdzić, czy aby na pewno zachowanie jest sprzeczne z tym, co “autor miał na myśli”.

Konkretna sytuacja, która świetnie to obrazuje, zdarzyła mi się dzisiaj w pracy. Kolega chciał sprawdzić listę procesów na jednym z serwerów SQL. W pierwszym odruchu sięgnął po PowerShella. Ale wynik mu się nie spodobał, “przesiadł się” więc na GUI.

Drugi kolega uznał, że tak tego zostawić nie można… Spróbował uruchomić to samo polecenie (a przynajmniej tak mu się wydawało) i uzyskał wynik pożądany. Koledzy uznali, że korzystają z różnych wersji a błędy wynikają z jakichś usterek w kodzie. I tak by się to pewnie skończyło, gdyby nie fakt, że wersja okazała się identyczna.

Zainteresowałem się, zacząłem drążyć. Wreszcie dostrzegłem subtelną różnicę. Przyjrzyjmy się. Moje podejście (i najprawdopodobniej podejście kolegi, któremu “działało”):

Get-DbaProcess -SqlInstance naszSQL -Spid 123

Wersja, która dawała wynik daleki od satysfakcjonującego:

Get-DbaProcess -SqlInstance naszSQL -Spid 123 -Hostname naszSQL

Pełna konsternacja: owszem, kolega dołożył warunek, ale oczywiście to powinno zawęzić wyniki, prawda? A no nie do końca. Co na to pomoc?

Get-Help-Get-DbaProcess

I wszystko jasne: dodatkowy parametr wyniki rozszerzył. A brak zrozumienia przeznaczenia tego parametru zaowocował tym, że kolega dodał wszystkie procesy uruchomione bezpośrednio na serwerze SQL. Przede wszystkim – procesy systemowe, które ze wszelkich sił starał się wykluczyć. Parafrazując: Pomoc służy, Pomoc radzi, Pomoc nigdy cię nie zdradzi!

~ - autor: Bartek Bielawski w dniu 25 marca, 2022.

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Połączenie z %s

 
%d blogerów lubi to: