W systemie Windows użytkownicy mogą mieć uprawnienia (do plików, drukarek itp) oraz prawa (do wyłączenia komputera, do zalogowania itp). Tutaj przedstawiam dwie funkcje, które pracują z prawami użytkowników. Pierwsza z nich sprawdza, czy użytkownik ma przyznane prawo, a druga nadaje takie prawo. Filozofia obu funkcji jest podobna. Polecenie secedit służy do wyeksportowania informacji o przyznanych […]
Archiwum dla kategorii ‘Power Shell’
PowerShell: Sprawdzanie i nadawanie użytkownikom praw użytkownika User Rights
Powershell: Zmienne globalne
W skryptach PowerShell można korzystać ze zmiennych lokalnych (widocznych wewnątrz funkcji), zmiennych skryptu (widocznych w skrypcie) i zmiennych globalnych (widoczne wszędzie). Popatrz na taki przykład: function Show-Variable() { echo „Inside the function: $MyVar” $MyVar=’BLUE’ } $MyVar = 'GREEN’ echo „Outside the function: $MyVar” Show-Variable echo „Outside the function: $MyVar” Jest tutaj funkcja, która wyświetla wartość […]
Powershell: Błędu nie ma, a polecenie nie działa
Mamy niby proste polecenie: ls -Recurse C:\Users\admin\Documents\| Select-Object Name,CreationTime | Where-Object -FilterScript {($_.CreationTime -lt (Get-Date).AddDays(-2) -and $_.Extension -eq „.txt”)} Niestety nic nie jest wyświetlane, a na pewno w tym katalogu są pliki TXT utworzone wcześniej niż 2 dni temu. O co chodzi? ls zwraca obiekty, które mają duuużo właściwości, między innymi Name, CreationTime i Extension […]
Powershell: Write-Host, Write-Warning i inne polecenia z serii…
Zacznijmy od tego co to jest host. Jeśli administrujesz systemami, to pewnie hostem nazywasz komputer: „pingować hosta”, „logować się do hosta” itp. W przypadku powershella host to nie komputer, tylko program jakim łączysz sie do powrshella. Stąd też np polecenie Get-Host zwraca np wersję programu jakim się łączysz do powershella, a $PSVersionTable zwraca wersję powershella […]
Powershell: echo nie działa!
Popatrz na taki skrypt: function doSomething() { param($times) $i = 0 while ($i -lt $times) { echo „$i” $i++ } } doSomething 3 Jeśli go uruchomisz, to wszystko działa jak należy. Funkcja jest wywoływana, polecenie echo wyświetla wyniki. Ale wystarczy drobna zmiana:
PowerShell: ErrorActionPreference, a kontynuacja pracy komend
W poniższych przykładach wysyłamy zapytanie WMI do do komputera CantorXX (który nie istnieje) i localhost (który oczywiście istnieje i odpowiada poprawnie) CONTINUE To domyślna wartość ErrorActionPreference. Jak widać na obrazku poniżej polecenie po napotkaniu błędu zgłasza ten błąd, ale potem KONTYNUUJE i kontaktuje się z drugim komputerem SILENTLYCONTINUE Przy połączeniu do pierwszego komputera oczywiście dochodzi […]
PowerShell: Nadawanie uprawnień do plików i katalogów
Zdarza się, że na dysku znajdziesz dzwiwaczny folder, który powstał w trakcie intalacji lub aktualizacji i chcesz go usunąć, ale pojawia się komunikat o braku uprawnień. Jak to? Ja – administrator i brak uprawnień? Z jakiegoś powodu te „dziwne” foldery są pozabezpieczane! Dobrze się zastanów nim je rzeczywiście usuniesz lub w nich coś pozmieniasz… No […]