Jak zwykle w powershell zadanie można zrealizować na dziesiątki sposobów, a ten poniżej to tylko jedna z propozycji Get-WmiObject win32_process | Foreach { ` $ret=@{}; ` $ret[’ProcessName’]=$_.Name; ` $ret[’Owner’]=$_.GetOwner().User; ` $obj =New-Object -TypeName PSObject -Property $ret; ` $obj } Co takiego się tutaj dzieje? Ponieważ polecenie Get-Process samo w sobie nie posiada możliwości wyświetlenia właściciela […]
Archiwum dla kategorii ‘Power Shell’
Powershell: wyświetlenie informacji o procesie i użytkowniku jednocześnie
Powershell: Sprawdzenie czy data to sobota lub niedziela
Załóżmy, że w swoim skrypcie potrzebujesz rozpoznać, czy dany dzień jest dniem wolnym (sobota lub niedziela) czy roboczym… Proste! $d = [datetime]::Now $d.dayofweek No i świetnie. Wynikiem może na przykład być: Tuesday Hmmm, ale czy aby zawsze? Na komputerze z polskimi ustawieniami regionalnymi może zostać zwrócone: Wtorek Jeśli chcesz sprawdzić czy dzień jest niedzielą czy […]
Powershell: Korzystanie z WebService
Zdarza się, że programista aplikacji z jakiej ma również skorzystać skrypt powershell przewidział wyłacznie interfejs wymiany danych w postaci web service. Zobacz, jak łatwo można korzystać z web service z poziomu Powershell. Tutaj skorzystamy z publicznie dostępnych web service http://www.webservicex.net Po pierwsze należy utworzyć obiekt WebServiceProxy, który zostanie zainicjowany adresem web service. W tym przypadku sięgamy […]
Powershell: Szukanie użytkowników o nazwie pasującej do maski
Zazwyczaj, konta w AD nie mają przypadkowych nazw. Nazwy muszą być nadawane zgodnie z przyjętą polityką. Np nazwy użytkowników mogą zawierać pierwsze litery nazwiska, a nazwy kont serwisowych mogą określać środowiska w jakich są wykorzystywane, jakie usługi będą z nich korzystać, na jakich serwerach itp. W takim przypadku dość łatwo przeprowadzić inwentaryzację kont wykorzysywanych przez […]
Powershell: wywoływanie metod obiektów WMI
Obiekty WMI mają złą sławę. Można z nich na prawdę dużo wyciągnąć, ale akurat ten kawałek platformy windows mógłby być trochę lepiej udokumentowany. Jednym z najbardziej tajemniczych tematów w pracy z WMI jest wywoływanie metod dla obiektów. Bez zbędnego rozwlekania tematu zobaczmy, jak to zrobić na 2 sposoby. Naszym zadaniem jest uruchomienie metodyDefragAnalysis na rzecz […]
Powershell: Get-Help about* zwraca tylko kilka pozycji
W Powershell wersji 5 pojawił się bug powodujący, że polecenie Get-Help about* zwraca tylko kilka wyników, podczas gdy tych plików z dokumentacją języka powinno być o wiele więcej… Przyczyną była zła nazwa przypisywana plikom pomocy i można ten problem naprawić uruchamiając następujące polecenie: Get-ChildItem -Path $pshome -Filter about*.txt -Recurse | Where-Object { $_.Name -notlike '*.help.txt’ […]
PowerShell: Własny typ enum
Bardzo nie lubię literówek w moich skryptach, dlatego gdzie mogę korzystam z intellisence, wybieram wartości z listy, korzystam ze zmiennych zamiast stałych napisowych itp. W C# uwielbiam typ enum, bo dzięki niemu mogę korzystać z nic mi nie mówiących wartości liczbowych za pomocą nazwanch tekstów. W Powershellu również można korzystać z typu enum: Add-Type -TypeDefinition […]