Przykłady skryptów PowerShell, które pomagają w zrozumieniu składni i sposobu działania języka

PowerShell jest potężnym językiem skryptowym i narzędziem do automatyzacji systemów Windows. Może być przydatny zarówno dla początkujących, jak i dla bardziej zaawansowanych użytkowników. W tym artykule przedstawimy kilka przykładów skryptów PowerShell, które pomogą w zrozumieniu składni i sposobu działania tego języka. Zaprezentowane przykłady będą obejmować różne aspekty PowerShell i posłużą jako solidna podstawa do dalszej nauki.

Skrypt powitalny:

Ten skrypt przywita użytkownika i przedstawi podstawowe informacje o komputerze.

$currentTime = Get-Date
$computerName = $env:COMPUTERNAME
$userName = $env:USERNAME

Write-Host "Witaj, $userName!"
Write-Host "Aktualna data i godzina: $currentTime"
Write-Host "Nazwa komputera: $computerName"

Skrypt liczący sumę liczb:

Ten skrypt poprosi użytkownika o wprowadzenie kilku liczb, a następnie obliczy ich sumę.

$numbers = Read-Host "Wprowadź liczby, oddzielone przecinkami"
$numberArray = $numbers -split ","
$sum = 0

foreach ($number in $numberArray) {
    $sum += [int]$number
}

Write-Host "Suma liczb wynosi: $sum"

Skrypt kopiujący pliki:

Ten skrypt skopiuje wszystkie pliki z jednego katalogu do innego.

$sourcePath = "C:\FolderA"
$destinationPath = "C:\FolderB"

Get-ChildItem $sourcePath | ForEach-Object {
    Copy-Item $_.FullName $destinationPath
}

Write-Host "Pliki zostały skopiowane pomyślnie."

Skrypt sprawdzający dostępność witryny internetowej:

Ten skrypt sprawdzi, czy określona witryna internetowa jest dostępna.

$websiteUrl = "http://www.example.com"

$webRequest = [System.Net.WebRequest]::Create($websiteUrl)

try {
    $response = $webRequest.GetResponse()
    Write-Host "Witryna jest dostępna."
} catch {
    Write-Host "Wystąpił błąd podczas próby uzyskania dostępu do witryny."
}

Skrypt wyszukujący pliki według rozszerzenia:

Ten skrypt wyszuka wszystkie pliki w określonym katalogu i jego podkatalogach o określonym rozszerzeniu.

$searchPath = "C:\Folder"
$extension = "*.txt"

Get-ChildItem $searchPath -Recurse -Filter $extension

Skrypt eksportujący informacje o usługach do pliku CSV:

Ten skrypt wygeneruje listę usług na komputerze i zapisze je do pliku CSV.

$services = Get-Service

$services | Select-Object Name, Status, StartType | Export-Csv -Path "C:\Services.csv" -NoTypeInformation

Write-Host "Informacje o usługach zostały wyeksportowane do pliku CSV."

Skrypt zmieniający rozszerzenie plików w określonym katalogu:

Ten skrypt zmieni rozszerzenie wszystkich plików w określonym katalogu na nowe rozszerzenie.

$folderPath = "C:\Folder"
$oldExtension = "*.txt"
$newExtension = "*.csv"

Get-ChildItem $folderPath -Filter $oldExtension | Rename-Item -NewName { $_.Name -replace $oldExtension, $newExtension }

Write-Host "Rozszerzenia plików zostały zmienione."

Skrypt tworzący harmonogram zadań:

Ten skrypt utworzy harmonogram zadań w systemie Windows, który uruchomi określony skrypt PowerShell o określonej godzinie.

$action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument "C:\Scripts\MyScript.ps1"
$trigger = New-ScheduledTaskTrigger -Daily -At 10:00am
$settings = New-ScheduledTaskSettingsSet

Register-ScheduledTask -TaskName "MyTask" -Action $action -Trigger $trigger -Settings $settings

Write-Host "Harmonogram zadań został utworzony."

Te przykładowe skrypty pokazują różne możliwości PowerShell i dają wgląd w składnię i sposób działania języka. Zachęcam do eksperymentowania z nimi, dostosowywania ich do swoich potrzeb i odkrywania dalszych funkcji, które PowerShell ma do zaoferowania. Pamiętaj, że nauka PowerShell jest procesem ciągłym, ale z czasem nabierzesz pewności i umiejętności w tym języku, co pozwoli Ci na bardziej zaawansowane zastosowania i automatyzację zadań.

Dodaj komentarz