Moduły programu PowerShell, które zmieniły mój przepływ pracy

Moduły programu PowerShell, które zmieniły mój przepływ pracy

Jeśli nadal korzystasz ze niestandardowych skryptów programu PowerShell do prostych transferów plików lub generowania raportów w programie Excel, czas usprawnić swój przepływ pracy. Gotowe moduły programu PowerShell radzą sobie z większością rutynowych zadań znacznie wydajniej niż cokolwiek, co napisałbyś ręcznie.

Aby rozpocząć korzystanie z tych modułów, upewnij się, że korzystasz z programu PowerShell w wersji co najmniej 5.1. Chociaż wiele modułów jest zgodnych z programem PowerShell 7 na różnych platformach, niektóre mogą być ograniczone do systemu Windows. Kluczowe jest również włączenie wykonywania skryptów poprzez dostosowanie zasad wykonywania w następujący sposób:

Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned -Force

Podczas instalowania modułów należy konsekwentnie używać parametru -Scope CurrentUser, aby wyeliminować konieczność posiadania uprawnień administracyjnych.

6 PSReadLine

Domyślnie dołączony do programu PowerShell moduł PSReadLine często jest niedoceniany, nawet przez doświadczonych użytkowników. Ten moduł wzbogaca środowisko wiersza poleceń o takie funkcje, jak podświetlanie składni, edycja wielowierszowa i predykcyjne możliwości IntelliSense.

Terminal PowerShell z zainstalowanym modułem PSReadLine
Źródło obrazu – autor: Tashreef Shareef – brak konieczności podawania źródła

Aby uzyskać najnowszą wersję PSReadLine, użyj następującego polecenia:

Install-Module -Name PSReadLine -Scope CurrentUser -Force

Włączenie funkcji IntelliSense ulepszy historię poleceń, wyświetlając sugestie podczas pisania. Aktywuj ją za pomocą:

Set-PSReadLineOption -PredictionSource HistorySet-PSReadLineOption -PredictionViewStyle ListView

Po wykonaniu kilku poleceń, takich jak ipconfig lub Get-Service, IntelliSense zasugeruje opcje z historii w momencie rozpoczęcia wpisywania. Możesz poruszać się po tych sugestiach za pomocą klawiszy strzałek w górę i w dół, potwierdzając wybór klawiszem Enter.

5 ImportujExcel

ImportExcel został już pobrany ponad 14 milionów razy i cieszy się popularnością wśród użytkowników, którzy chcą tworzyć arkusze kalkulacyjne w programie Excel bez konieczności posiadania samego programu Excel — jest to idealne rozwiązanie dla środowisk serwerowych i skryptów automatyzacji.

Importuj moduł Excela do terminala PowerShell
Źródło obrazu – autor: Tashreef Shareef – brak konieczności podawania źródła

Aby zainstalować ImportExcel, wprowadź następujące polecenie:

Install-Module -Name ImportExcel -Scope CurrentUser

Ten moduł może wykonywać zadania od podstawowego eksportu po bardziej złożone funkcje, takie jak tabele przestawne i formatowanie warunkowe. Na przykład, aby wyeksportować informacje o uruchomionych procesach do sformatowanego arkusza kalkulacyjnego, użyj:

Get-Service | Where-Object {$_.Status -eq "Running"} |Export-Excel -Path "ServiceReport.xlsx" -AutoSize -TableStyle Medium9 -FreezeTopRow

To polecenie gromadzi wszystkie aktywne usługi i eksportuje je do pliku Excel, formatując kolumny w celu dopasowania ich do zawartości i zamrażając wiersz nagłówka dla wygody.

Raport Excela wygenerowany przez ImportExcel
Źródło obrazu – autor: Tashreef Shareef – brak konieczności podawania źródła

4 PSWriteHTML

PSWriteHTML umożliwia przekształcanie danych wyjściowych programu PowerShell w raporty HTML, zawierające tabele i wykresy, bez konieczności wcześniejszej znajomości kodowania HTML.

Polecenie eksportu modułu PSWriteHTML
Źródło obrazu – autor: Tashreef Shareef – brak konieczności podawania źródła

Zainstaluj moduł za pomocą polecenia:

Install-Module -Name PSWriteHTML -Scope CurrentUser

Aby utworzyć raport systemowy przedstawiający dziesięć procesów o największym obciążeniu procesora, użyj:

Import-Module PSWriteHTML;$procs = Get-Process | Select-Object Name, CPU, WorkingSet -First 10New-HTML -TitleText "System Report" -FilePath "Report.html" -ShowHTML {New-HTMLSection -HeaderText "Process Information" {New-HTMLTable -DataTable $procs -Filtering -Buttons @('copyHtml5', 'excelHtml5')}}

Wygenerowany kod HTML zawiera funkcje sortowania, filtrowania i eksportowania obsługiwane przez JavaScript.

Wynik eksportu modułu PSWriteHTML
Źródło obrazu – autor: Tashreef Shareef – brak konieczności podawania źródła

3 PSWindowsUpdate

Jako najpopularniejszy moduł w Galerii PowerShell z ponad 33 milionami pobrań, PSWindowsUpdate oferuje polecenia cmdlet zaprojektowane specjalnie do zarządzania klientem Windows Update.

Moduł PSWindowsUpdate PowerShell
Źródło obrazu – autor: Tashreef Shareef – brak konieczności podawania źródła

Zainstaluj go za pomocą następującego polecenia:

Install-Module -Name PSWindowsUpdate -Scope CurrentUser

Ten moduł udostępnia polecenia cmdlet do kompleksowego zarządzania usługą Windows Update – idealne do automatyzacji zadań. Sprawdź oczekujące aktualizacje na wielu serwerach jednocześnie za pomocą:

$Servers = 'SERVER01', 'SERVER02', 'SERVER03'Invoke-Command -ComputerName $Servers -ScriptBlock {Import-Module PSWindowsUpdate<|image_sentinel|>Get-WindowsUpdate -MicrosoftUpdate | Select-Object @{n='Computer';e={$env:COMPUTERNAME}}, KB, Title, Size, IsDownloaded, IsInstalled, RebootRequired} | Sort-Object Computer, KB | Format-Table -AutoSize

Szybko wykryje oczekujące aktualizacje na Twoich serwerach. Możesz zainstalować konkretne aktualizacje, ukryć problematyczne lub wygodnie zaplanować instalacje. Użyj parametru -AcceptAll, aby pominąć monity o potwierdzenie.

2 ikony terminala

Odśwież interfejs terminala programu PowerShell dzięki funkcji Terminal-Icons, która dodaje rozpoznawalne ikony do plików na listach katalogów. Każdy typ pliku jest reprezentowany przez unikalną ikonę i kolor, co poprawia widoczność i ułatwia nawigację.

Moduł Terminal-Icons PowerShell
Źródło obrazu – autor: Tashreef Shareef – brak konieczności podawania źródła

Aby zainstalować, uruchom:

Install-Module -Name Terminal-Icons -Scope CurrentUser

Ten moduł rozszerza działanie polecenia Get-ChildItem. Po instalacji, aby zobaczyć ikony, użyj:

Import-Module Terminal-Icons

Następnie, po uruchomieniu Get-ChildItem lub jego aliasów, każdy typ pliku wyświetli swoją ikonę i kolor. Skrypty programu PowerShell wyświetlą logo programu PowerShell, a foldery będą wyświetlać ikony przypisane do konkretnych folderów. Ta estetyczna zmiana nie tylko poprawia wygląd terminala, ale także ułatwia szybkie identyfikowanie plików podczas nawigacji między kartami. Należy pamiętać, że zainstalowanie czcionki Nerd jest niezbędne do poprawnego wyświetlania ikon.

Moduł Terminal-Icons PowerShell z funkcją Get-ChildItem
Źródło obrazu – autor: Tashreef Shareef – brak konieczności podawania źródła

1 Transferetto

Transferetto to moduł programu PowerShell zaprojektowany w celu uproszczenia interakcji z protokołami FTP, FTPS i SFTP. Zamiast zagłębiać się w klasy. NET lub korzystać z narzędzi innych firm, oferuje intuicyjne, natywne dla programu PowerShell polecenia cmdlet.

Moduł Transferetto PowerShell
Źródło obrazu – autor: Tashreef Shareef – brak konieczności podawania źródła

Aby zainstalować Transferetto, użyj:

Install-Module -Name Transferetto -Scope CurrentUser

Przepływ pracy ściśle odzwierciedla przepływ pracy w modułach bazy danych: łączenie, wykonywanie zadań i rozłączanie:

$Client = Connect-FTP -Server "ftp.example.com" -Credential (Get-Credential)Send-FTPFile -Client $Client -LocalPath "C:\Reports\Report1.xlsx" -RemotePath "/uploads/"Disconnect-FTP -Client $Client

Oprócz podstawowych funkcji Transferetto obsługuje konfiguracje SSL, metody szyfrowania, opcje sprawdzania poprawności certyfikatów i polecenie Request-FTPConfiguration, które może automatycznie testować ustawienia połączenia z serwerem.

Co więcej, nie ogranicza się do pojedynczych plików; możesz przesyłać całe katalogi za pomocą Send-FTPDirectory, a nawet wykonywać transfery FXP (kopiowanie plików między serwerami).Dzięki obsłudze protokołów SFTP i SSH, umożliwia również uruchamianie poleceń zdalnych w połączeniu z transferem plików.

Ponieważ Transferetto działa zarówno w środowisku Windows PowerShell 5.1, jak i PowerShell 7+, Twoje skrypty będą działać funkcjonalnie na platformach Windows, Linux i macOS bez konieczności wprowadzania jakichkolwiek modyfikacji.

Nawet jeśli korzystasz z programu PowerShell tylko w podstawowym zakresie, zapoznanie się z kilkoma modułami może znacząco poprawić Twoją wydajność. Moduły takie jak PSReadLine przyspieszają pisanie dzięki podpowiedziom predykcyjnym, ImportExcel umożliwia łatwe zarządzanie arkuszami kalkulacyjnymi bez programu Excel, a ikony terminala zwiększają czytelność interfejsu terminala.

W Galerii PowerShell dostępna jest szeroka gama modułów. Przed instalacją należy sprawdzić ich kompatybilność i historię aktualizacji. Zacznij od jednego lub dwóch modułów, które bezpośrednio odpowiadają na Twoje najpilniejsze potrzeby, a następnie stopniowo rozszerzaj zestaw narzędzi, w miarę jak będziesz nabierać wprawy.

Źródło i obrazy

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *