Skocz do zawartości

KolegaDudysa

Użytkownicy
  • Postów

    418
  • Dołączył

  • Ostatnia wizyta

Treść opublikowana przez KolegaDudysa

  1. Command Line Encrypt Strona domowa Licencja: Freeware Crypt jest to konsolowe narzędzie do szyfrowania i deszyfrowania plików. Używa Tiny Encryption Algorithm (TEA) z 128-bitowym kluczem oraz tryb szyfrowania wiadomości za pomocą szyfru blokowego Cipher Block Chaining (CBC). Szyfrowanie nie zachodzi na orginalnym pliku, aplikacja z orginalnego pliku stworzy nową zaszyfrowaną kopię. Nie wymaga instalacji.
  2. Bgrep Strona domowa Licencja: Apache License Bgrep jest to mały konsolowy program podobny do Grep. Pozwala na wyszukiwanie tekstu w plikach, rekrusywnie w wielu plikach, uwzględnia wielkość liter, wprowadza numery linii.
  3. Text File Statistics Strona domowa Platforma: Windows 2000/XP/Vista Licencja: GNU General Public License (GPL) Narzędzie TextStat służy do przeglądania statystyk pliku tekstowego. Statystyki obejmują EOL (End Of Line) jest to znacznik wstawiany, poprzez naciśnięcie klawisza enter czyli znak powodujący przejście do nowego wiersza na ekranie. Znak końca wiersza w kodzie ASCII jest tworzony przez układ znaków CR-LF (powrót karetki, wysuw wiersza). Pary końca linii i liczby linii, pokazuje również niezamknięte linie na końcu. Działa także z dokumentami .doc, .docx.
  4. Exf Strona domowa Platforma: Windows 2000/XP/2003/Vista Licencja: Freeware Narzędzie oczywiście do obliczania sum kontrolnych. Wspiera typy: - Adler32 - CRC32 - MD2, MD4, MD5 - SHA1, SHA2 (SHA256, SHA384, SHA512) - RIPEMD128, RIPEMD160 - TIGER128, TIGER160, TIGER192 - GOST Ciekawym rozwiązaniem jest tworzenie raportów w formacie md5 w aktualnym katalogu roboczym i późniejsze skanowanie z porównaniem sum w raporcie z plikami znajdującymi się w katalogu. Jeśli jakiś plik został nadpisany i zmieniła się jego suma kontrolna, narzędzie wykaże błąd i poda nazwę zmienionego pliku. Przy braku jakiegoś pliku w katalogu, narzędzie wykaże jego brak. Daje możliwość skanowania struktury katalogu.
  5. Inne narzędzia PowerShell PrimalForms Strona domowa Licencja: Freeware Platforma: Windows XP,Vista PrimalForms - GUI builder tool PowerShell jest to kolejna propozycja wydana przez firmę Sapien. Narzędzie pozwala dodać GUI do skryptów, między innymi tworzyć przyciski. Narzędzie współpracuje z PowerShell V1 i V2 CTP. Do programu dołączone zostało kilka próbek prezentacyjnych. Downland programu z witryny Sapien, przed pobraniem należy wypełnić krótki kwestionariusz i podać e-mail na który przyjdzie link do pobrania programu. Narzędzie wymaga instalacji, małych rozmiarów. Dodatkowe materiały z przykładowymi skryptami: Getting Started with PrimalForms PrimalForms (First Form) ProcPerf BootTime OneNote PowerShell Provider Strona domowa Dokumentacja / Pobieranie Licencja: Microsoft Community License (Ms-CL) OneNote PowerShell Provider jest wtyczką, która umożliwia na przesyłanie wyników z poziomu konsoli do programu OneNote 2007, pozwalając na tworzenie notatek w "biegu". Wcześniej testowałem w wersji konsoli CTP2, teraz w CTP3 i działa idealnie. Fajną cechą wtyczki jest możliwość tworzenia notatek w wielu sekcjach, a w nich możliwość podziału na wiele podstron. W przykładzie stworzenie notatki z dwiema sekcjami (kartami) o nazwie: Sesja i informacje. Sekcja Sesja posiada podstronę Procesy. Sekcja Informacje posiada dwie podstrony Usługi oraz Klasy. Do każdej z podstron jest wysyłany konkretny wynik. Przykład: #Dodanie wtyczki add-pssnapin Microsoft.Office.OneNote #Stworzenie folderu SystemInfo dla dokumentu w Temp użytkownika New-Item onenote:\SystemInfo -type Notebook -value $env:temp #Tworzenie sekcji (kart) New-Item onenote:\SystemInfo\Sesja -type Section New-Item onenote:\SystemInfo\Informacje -type Section #Tworzenie podstron dla sekcji New-Item onenote:\SystemInfo\Sesja\Procesy -type Page New-Item onenote:\SystemInfo\Informacje\Usługi -type Page New-Item onenote:\SystemInfo\Informacje\Klasy -type Page #Przesyłanie wyniku do podstron Get-Process | Out-String | Add-Content onenote:\SystemInfo\Sesja\Procesy Get-Service | Out-String | Add-Content onenote:\SystemInfo\Informacje\Usługi Get-WmiObject -List | fl Name | Out-String | Add-Content onenote:\SystemInfo\Informacje\KlasyOtrzymamy informację na temat procesów (Sesja <Procesy>), usług systemowych oraz spis klas WMI (Informacje <Usługi> - <Klasy>). PowerPacks dla PowerGUI MSI Table Browser Strona domowa MSI Table Browser jest to PowerPack, który działa w środowisku PowerGUI, pozwala on na przegląd wewnętrznych danych przechowywanych w instalatorach .msi, pozwalając przejrzeć wszystkie zapisy w tabelach. Przed importowaniem PowerPack do PowerGUI, należy pobrać i zainstalować bibliotekę InstallerCmdlets.dll (InstallerCmdlets-Binaries.zip), narzędziem InstallUtil. InstallerCmdlets.dll jest to snap-in dla PowerShella, który również można używać z poziomu konsoli. Zawiera w sobie dwa cmdlety: Get-InstalledProducts - wykażę listę zainstalowanego oprogramowania. Get-MsiTableData - pozwala przeglądać wewnętrzne dane w instalatorach .msi, wpisując nazwę wybranej tabeli. Jednakże zapamiętanie wszystkich tabel może być uciążliwe to MSI Table Browser zawiera je wszystkie bo taki był zamysł. File System Management Strona domowa File System Management jest to PowerPack, który działa w środowisku PowerGUI, pozwala on na przegląd katalogów i podkatalogów, plików (Get-DirSize), oblicza rozmiar w KB, MB, GB, całkowity rozmiar, pozwala na wspólne akcje, jak stworzenie nowego pliku, usunięcie istniejącego, zmiane nazwy, sprawdzenie praw do pliku, filtrowanie wyników z użyciem filtrów, po atrybutach, wielkości. Get-User_Usage pozwala na przegląd katalogów, podkatalogów, plików i określić ich właściciela. Get-LargeFiles pozwala określić różne akcje dla usykania danego wyniku, wymaga podania katalogu, określenia, jakiej wielkości pliki mają zostać listowane. Get-Tempfiles pozwala na listing wszystkich plików .tmp oraz .temp, pozwla również dodac roszerzenie. Get-OldFiles pozwala na rekrusywne przeszukanie plików, które sortujemy po dacie utworzenia. Get-Compressed pozwala wyszukać na dysku pliki z rozszerzeniem .rar czy .zip. Registered PowerShell Snapins Strona domowa Ten PowerPack umożliwia przegląd i kontrolę zarejestrowanych snapins w konsoli PowerShell. PowerShell Big Invaders Strona domowa Licencja: Attribution-NonCommercial-ShareAlike 2.5 (Creative Commons) Snap-in umożliwia relaks w konsoli, jest to gra, strzelanka, po aktualizacji działa w systemie Vista. Jeśli ktoś chce mieć efekty dzwiękowe musi zainstalować DirectX DirectSound.
  6. Edytory PowerShell PowerGUI Strona domowa Platforma: Windows XP, 2003, 2008 Licencja: Freeware PowerGUI jest to produkt rozwijany przez firmę Quest Software. Narzędzie to jest nakładką graficzną na PowerShella umożliwiające posługiwanie się wierszem poleceń z poziomu programu, posiada edytor skryptów. Posiada interfejs wtyczek - modułów, które nie zostały uwzględione przez twórców aplikacji, wtyczki tworzone są przez społeczność i udostępniane w dziale PowerPacks. Program dostępny w polskiej wersji językowej, wymaga instalacji. Dokumentacja programu - PowerGUI Tutorials. Dodatkowo na stronie tłumaczenie opcji i komunikatów programu - klik. PowerShell Analyzer Strona domowa Licencja: Freeware PowerShell Analyzer wydawnictwa Shell Tools, LLC to udostępniony w październiku 2008 r. projekt, tym razem w pełni darmowy. PowerShell Analyzer jest to zintegrowane środowisko programistyczne, pozwalające tworzyć, edytować, modyfikować skrypty. Między innymi posiada autouzupełnianie cmdletu, wykresy danych i siatki obliczeniowe, pomoc cmdletów, aliasów, dostawców. Nie wymaga instalacji. PrimalPad Strona domowa Licencja: Freeware PrimalPad Community Edition to przenośny edytor, lekki w użyciu, nie wymagający instalacji, pozwala edytować skrypty PowerShell, VBScript, JScript oraz pliki html. Posiada wsparcie w wielu kartach, które można grupować po typach plików, kolorowanie składni, wstawia numery linii, posiada opcję pełno ekranową oraz duże możliwości konfiguracyjne. PrimalPad jest dostępny w wersjach x32 i x64. Przed pobraniem należy wypełnić krótką ankietę i podać adres e mail na który przyjdzie link do pobrania.
  7. Generatory kodu dla PowerShell PowerShell Scriptomatic Strona domowa Platforma: Windows XP, Server 2003, Vista, Server 2008 Wymagania systemowe: zainstalowany Windows PowerShell 1.0 lub wersje późniejsze Licencja: Freeware Narzędzie to pracuje na klasach WMI, służy do tworzenia prostego kodu. Wymaga instalacji. Pozwala na zapis wyników w formatach: Text File, Xml File, Csv File. Programem możemy uruchamiać skrypty wygenerowane w samej aplikacji lub z gotowego skryptu, a wynik zostanie wyświetlony w konsoli. PowerShell Scriptomatic ofcjalnie pojawił się w wirynie Microsoftu w tym roku. Jest to dzieło konsultanta współpracującego z koncernem. Wczesniej aplikacja była dostępna tylko po zakupie książki wydawnictwa MS. WMI Code Generator Strona domowa Wymagania systemowe: zainstalowany Windows PowerShell 1.0 lub wersje późniejsze Licencja: Freeware Jest to jednoosobowy projekt, który jest wciąż rozwijany o nowe funkcje. Program nie wymaga instalacji, małych rozmiarów. Pracuje na klasach WMI. Generuje prosty kod w językach PowerShell, Python, VBScript, Batch, JScript, KiXtart, Object Rexx, Perl.
  8. Paczki cmdletów dla powłoki skryptowej PowerShell innych wydawców PowerShell Community Extensions (PSCX) Strona domowa Licencja: Microsoft Public License (Ms-PL) Jest dość dużą paczką, posadającą zbiór różnych rozszerzeń, własną pomoc, skrypty. Łącznie około stu nowych poleceń. Adresowana dla zaawansowanych użytkowników niż administratorów. Paczka jest kompatybilna z PowerShell V2 w wersji CTP2. ITVisions PowerShell Extension Strona domowa Licencja: Freeware ITVisions PowerShell Extension v2.1 jest to paczka 26 cmdletów, poszerzająca możliwości konsoli, choć część wyników można uzyskać samemu. Instalacja paczki zachodzi poprzez rejestrację biblioteki narzędziem installutil. Paczka zawiera takie cmdlety jak: polecenia obiektów usług katalogowych, takich jak Active Directory, WinNT lub Internet Information Services (IIS) polecenia dostępu do bazy danych polecenia dostarczające informację o Twoim systemie polecenia dostarczające informację o sprzęcie - lokalnie lub zdalnie Dodanie wtyczki podczas jednorazowej sesji: Add-PSSnapin ITVisions_PowerShell_Extensions Wyświetlenie spisu poleceń paczki: Get-Command -pss ITVisions_PowerShell_Extensions PoshNet Strona domowa Licencja: General Public License PoshNet jest pojedyńczym cmdletem Get-Dns, posiadającym większe możliwości od polecenia nslookup, umożliwiającym na różne zapytania z poziomu konsoli. Podstawową cechą polecenia są oczywiście zapytania o adresy IP do serwera DNS. W wersji konsoli 1.0 wymaga instalacji poprzez dodanie snap-in, w v2 CTP2 można dodać jako moduł, w CTP3 również, umieszczając PoshNet w folderze MODULES. Scieżkę do folderu MODULES można sprawdzić z poziomu konsoli wpisując (dla CTP3): $env:PSMODULEPATH Pobranie modułu: Import-Module PoshNet Dostępna lista poleceń: Get-Command -Module PoshNet
  9. Edytory klas WMI oraz obiektów .NET, pracujące z powłoką PowerShell PowerTab Strona domowa Jak do tej pory jest to jedyny tego typu edytor, który pracuje w konsoli PowerShell. Ma za zadanie listować klasy WMI oraz obiekty .NET i metody jakie można wykonywać na obiektach z poziomu samej powłoki. Pozwala na filtracje wyników oraz wyświetlać je okienkowo. UPDATE: Nowy PowerTab został przeniesiony do CodePlex.
  10. Edytory PowerShell BgShell - Background Shell Strona domowa Licencja: Freeware BgShell jest programem, który przyjmuje ideę "PowerShell Everywhere" czyli PowerShell wszędzie. Program oferuje szybkie uruchamianie cmdletów PS czy innych poleceń stosując taktykę "zawsze pod reką" czyli BgShell przez cały czas jest uruchomiony w tle. Pojawienie się interfejsu programu zachodzi skrótem "ALT+B", a ponowne ukrycie programu "CTRL+ALT+B". Nie wymaga instalacji. BgShell Strona domowa Licencja: Microsoft Reciprocal License (Ms-RL) Status: Preview 2 \ Rozwój Jest to kolejna odsłona edytora BgShell. Do największych cech programu należą między innymi otwieranie w kartach - znane rozwiązanie z przeglądarek internetowych w sposób tradycyjny, jak i za pomocą skrutów klawiaturowych. Kolorowanie składni, posiada pełnoekranowy tryb wyświetlania, podpowiedzi debuggera. Jego mocno wyróżniającą cechą jest wbudowany "edytor" (jeśli można tak to nazwać) wyświetlający właśności cmdletów oraz innych poleceń. Wystarczy "najechać" kursorem na wybrane polecenie, aby otrzymać listę własności, takie jak typ polecenia, opcje, referencje cmdletu, definicje, klasy jakiej cmdlet używa. Możliwość otrzymania podobnych informacji o poleceniach z wiersza polecenia czy systemowych programów typu "Notepad". Zobacz prezentacje klik. Na kolejne wyróżnienie zasługuje "lekkość" programu, szybkość uruchamiania oraz małe użycie pamięci. Nie wymaga instalacji. Dla całkowitego, poprawnego działania programu należy mieć zainstalowany PowerShell 2 CTP2. PoshConsole Strona domowa Licencja: Microsoft permissive License (Ms-PL) Status: Alpha \ Rozwój PoshConsole jest projektem rozwijanym przez społeczność Open Source. Projekt ma stanowić konkurencję dla konsoli PowerShell o poszerzenie funkcjonalności oraz dodawanie funkcji takich jak WPF. Głównymi cechami ma być poruszanie się skrótami klawiaturowymi, mają zostać wprowadzone karty znane i zastosowane w przeglądarkach internetowych. Konsola pracuje w tle, aby "odkryć" konsolę i "zakryc" używamy skrótu Win~, pomysł zaczerpnięty z quake-console dla systemu Linux. Nie wymaga instalacji. Opdowiednikiem quake-console dla wiersza polecenia jest winqconsole - zobacz w temacie Console - Podmiana wyglądu okna CMD.
  11. Pomoc Powershell Help 2.0 Community Edition Strona domowa Licencja: Freeware Wymagania: Visual C++ 2008 Redistributable Package To dość ciekawe narzędzie, jest zamiennikiem pliku pomocy PowerShella. Wymaga instalacji. Jego główną zaletą jest importowanie plików pomocy .xml oraz plików pomocy about_ na stałe do narzędzia, co umożliwia rozbudowę go o nowe gałęzie pomocy. Jak widać w powyższych przykładach Windows Installer PowerShell Module oraz Powershell Zip File Export/Import Cmdlet Module. Dodatkowo przy wybranym poleceniu jest możliwość wprowadzania własnych notatek czy komentarzy. Narzędzie posiada wiele skórek do zmiany wyglądu, wyszukiwarkę tekstu, linki pokrewne (hiperłącza). Twórcy programu oferują możliwość korzystania z narzędzia bez potrzeby zainstalowanej powłoki konsolowej. Aby pobrać narzędzie należy wypełnić krótki formularz oraz podać e-mail, na który przyjdzie link do pobrania. ShinyPower Strona domowa Licencja: Microsoft Shared Source Permissive License (MS-PL) Jest to niewielkich rozmiarów narzędzie, nie wymagające instalacji. Ma za zadanie okienkowo zbierać i wyświetlać informacje na temat aliasów, cmdletów oraz poleceń pomocy bez potrzeby uruchamiania konsoli. Program przydatny jeśli chcemy szybko uzyskać informacje bez potrzeby uruchamiania konsoli. Program na dzień dzisiejszy zbiera informacje tylko poleceń, które są wbudowane w konsolę, nie wyświetli poleceń obcych wydawców. Program jest w ciągłym rozwoju. Jest to wersja przedpremierowa Release Candidate 2 w wersji 0.2.0.28410 BETA. Do czasu wydania wersji finalnej może się wiele zmienić. Windows PowerShell Help Tool Strona domowa Licencja: Freeware Narzędzie te również pełni rolę zbierania i wyświetlania okienkowo z powłoki informacji o aliasach, cmdletach oraz poleceń pomocy. Wymaga instalacji. Dla poprawnego działania programu należy mieć zainstalowany pakiet .Net.framework 2.0. Prócz wyświetlania pomocy wbudowanych poleceń w konsoli, wyświetla również pomoc firmowej paczki cmdletów - PshX-SAPIEN, nie zbiera informacji o poleceniach od innych wydawców. Posiada możliwość zmiany skrórki programu.
  12. Multiple ways to open PowerShell in the current Explorer window Czyli otwórz PowerShell w bierzącym oknie eksploratora w systemie Vista. Na stronie podanej powyżej znajduje się skrypt .reg, który pozwala dodać nową pozycję do eksploratora. Natomiast poniżej znajduje się spolszczona wersja tego skryptu. Zresztą autor niepotrzebnie utworzył tak duży skrypt REG. To co tam importuje już w części jest w rejestrze Vista. Wystarczy ściąć REG do postaci uwzględniającej tylko wtórnie dodawane zapisy, tzn. podklucz o nazwie 0 w dublu dla elementu zaznaczonego + niezaznaczonego. Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\FolderTypes\{7d49d726-3c21-4f05-99aa-fdc2c9474656}\TasksItemsSelected\0] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\FolderTypes\{7d49d726-3c21-4f05-99aa-fdc2c9474656}\TasksItemsSelected\0\{27dfca84-8593-46e4-99d8-23eb83452f65}] @="Command" "Icon"=hex(2):63,00,3a,00,5c,00,77,00,69,00,6e,00,64,00,6f,00,77,00,73,00,5c,\ 00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,57,00,69,00,6e,00,\ 64,00,6f,00,77,00,73,00,50,00,6f,00,77,00,65,00,72,00,53,00,68,00,65,00,6c,\ 00,6c,00,5c,00,76,00,31,00,2e,00,30,00,5c,00,70,00,6f,00,77,00,65,00,72,00,\ 73,00,68,00,65,00,6c,00,6c,00,2e,00,65,00,78,00,65,00,2c,00,30,00,00,00 "InfoTip"=hex(2):4f,00,74,00,77,00,f3,00,72,00,7a,00,20,00,50,00,6f,00,77,00,\ 65,00,72,00,53,00,68,00,65,00,6c,00,6c,00,20,00,77,00,20,00,62,00,69,00,65,\ 00,7c,01,05,01,63,00,79,00,6d,00,20,00,66,00,6f,00,6c,00,64,00,65,00,72,00,\ 7a,00,65,00,2e,00,00,00 "Title"=hex(2):50,00,6f,00,77,00,65,00,72,00,53,00,68,00,65,00,6c,00,6c,00,00,\ 00 "MatchExtensions"="*" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\FolderTypes\{7d49d726-3c21-4f05-99aa-fdc2c9474656}\TasksItemsSelected\0\{27dfca84-8593-46e4-99d8-23eb83452f65}\shell] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\FolderTypes\{7d49d726-3c21-4f05-99aa-fdc2c9474656}\TasksItemsSelected\0\{27dfca84-8593-46e4-99d8-23eb83452f65}\shell\InvokeTask] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\FolderTypes\{7d49d726-3c21-4f05-99aa-fdc2c9474656}\TasksItemsSelected\0\{27dfca84-8593-46e4-99d8-23eb83452f65}\shell\InvokeTask\command] @="D:\\Skrypty\\ps.bat %2" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\FolderTypes\{7d49d726-3c21-4f05-99aa-fdc2c9474656}\TasksNoItemsSelected\0] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\FolderTypes\{7d49d726-3c21-4f05-99aa-fdc2c9474656}\TasksNoItemsSelected\0\{27dfca84-8593-46e4-98d8-33eb83452f65}] @="Command" "Icon"=hex(2):63,00,3a,00,5c,00,77,00,69,00,6e,00,64,00,6f,00,77,00,73,00,5c,\ 00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,57,00,69,00,6e,00,\ 64,00,6f,00,77,00,73,00,50,00,6f,00,77,00,65,00,72,00,53,00,68,00,65,00,6c,\ 00,6c,00,5c,00,76,00,31,00,2e,00,30,00,5c,00,70,00,6f,00,77,00,65,00,72,00,\ 73,00,68,00,65,00,6c,00,6c,00,2e,00,65,00,78,00,65,00,2c,00,30,00,00,00 "InfoTip"=hex(2):4f,00,74,00,77,00,f3,00,72,00,7a,00,20,00,50,00,6f,00,77,00,\ 65,00,72,00,53,00,68,00,65,00,6c,00,6c,00,20,00,77,00,20,00,62,00,69,00,65,\ 00,7c,01,05,01,63,00,79,00,6d,00,20,00,66,00,6f,00,6c,00,64,00,65,00,72,00,\ 7a,00,65,00,2e,00,00,00 "Title"=hex(2):50,00,6f,00,77,00,65,00,72,00,53,00,68,00,65,00,6c,00,6c,00,00,\ 00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\FolderTypes\{7d49d726-3c21-4f05-99aa-fdc2c9474656}\TasksNoItemsSelected\0\{27dfca84-8593-46e4-98d8-33eb83452f65}\shell] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\FolderTypes\{7d49d726-3c21-4f05-99aa-fdc2c9474656}\TasksNoItemsSelected\0\{27dfca84-8593-46e4-98d8-33eb83452f65}\shell\InvokeTask] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\FolderTypes\{7d49d726-3c21-4f05-99aa-fdc2c9474656}\TasksNoItemsSelected\0\{27dfca84-8593-46e4-98d8-33eb83452f65}\shell\InvokeTask\command] @="D:\\Skrypty\\ps.bat %2" Poza tym: Domyślnie dostęp do tego klucza jest skonfigurowany na brak pełnego dostępu dla Administratorów i SYSTEM (tylko konto TrustedInstaller ma pełną kontrolę). Przed importem muszą zostać ręcznie odblokowane uprawnienia do całego klucza: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\FolderTypes\{7d49d726-3c21-4f05-99aa-fdc2c9474656} Czyli: zmiana Właściciela z TrustedInstaller na grupę Administratorzy + po tym dopiero Administratorom nadać Pełną kontrolę. Należy pamiętać że opcja będzie dostępna w tedy, gdy: - będziemy posiadali katalog D:\Skrypty Nie musi być to idetycznej nazwy katalog, jednakże należy pamiętać że powyższy skrypt .reg, posiada gotowy wpis dla ścieżki i nazwy katalogu oraz pliku batchowego (nazwa domyślna pliku batch "ps"), który będzie uruchamiał konsolę: @="D:\\Skrypty\\ps.bat %2" Utworzyć plik batch (ps.bat) i umieścić go w katalogu. @echo off pushd %1 %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe @echo
  13. PowerToys dla Windows Vista PowerShell Prompt Here czyli Otwórz w PowerShell. Mała aplikacja dla systemu Vista, która dodaje do menu kontekstowego pozycje PowerShell Prompt Here oraz PowerShell Prompt Here As Administrator. Do pobrania na stronie i opisem: http://technet.microsoft.com/en-us/magazine/cc162321.aspx (po otwarciu strony downland na samej górze - Utility2007_06.exe ) PowerShell Toolbar Downland Jest to Toolbar narzędziowy, który zostaje dodany do okna przeglądarki lub do okna mój komputer. Zawiera skróty do blogów, narzędzi, działu pobrań. Demonstracja programu na blogu $cript Fanatic Run with PoSH PowerShell from Windows explorer Run with PoSH czyli uruchom w PowerShellu jest to ciekawa propozycja, gotowy wpis rejestru, który zostaje dodany do menu kontekstowego, aby uruchomić skrypt zaznaczamy go prawoklikiem i wybieramy w menu pozycje. Widoczna w menu jest tylko prawoklikiem na plik skryptu.
  14. ASE PowerShell Player Jest to player w pełni napisany w PowerShellu. Obsługujący format mp3, można nim odsłuchać podcasty, warsztaty związane ze scriptingiem PowerShella. Posiada listę odtwarzania, kanały RSS. Minimalizuje się do zasobnika systemowego, ma własne menu kontekstowe. Dostępne na adminscripteditor
  15. PowerShell Community Extensions - PSCX 1.1.1 http://www.codeplex.com/PowerShellCX PowerShell Community Extensions jest to potężna paczka nowych cmdletów dla PowerShella. Znajduje się w niej około stu nowych poleceń. Własna pomoc. Kilkanaście gotowych skryptów. Do pobrania stąd: Klik. Pełny spis poleceń znajduje się tu: Klik. Polecany przez M$. Podstawy... Jak wyświetlić opis pomocy poleceń dla PowerShell Community Extensions ze standardowego polecenia w konsoli: Get-Help about_pscx Jak wyświetlić opis pomocy korzystając z pomocy PowerShell Community Extensions: Główne polecenie to: Get-PagedHelp, jego nazwa skrótowa: help about_pscx lub man about_pscx Używając typu tej pomocy nieco zmieni się obszar poruszania. Zniknie pasek przewijania. Przesuwanie pomocy - spacja, strzałka dół-góra. Jeśli nadal będziemy znajdować się w pomocy wcisnięcie litery H przekieruje nas do opcji pomocy: Przykładowo w opcji pomocy jeśli chcemy zaznaczyć interesujące nas wyrażenia wpisujemy /D. Zaznaczy w zdaniach na niebiesko znajdujący się tam przez nas wybrany wyraz. Całkowite wyjście z pomocy klawisz Q Nadal tak samo możemy wyświetlać pomoc interesującego nas polecenia. Standardowo: Get-Help Get-DhcpServer lub man Get-DhcpServer Jak wyświetlić liste poleceń PowerShell Community Extensions: Get-PscxCmdlet lub gcmpscx Jak wyświetlić liste dostawców PowerShell Community Extensions: Get-PscxDrive lub gdrpscx Jak wyświetlić liste aliasów PowerShell Community Extensions: Get-PscxAlias lub galpscx Jak wyświetlić podstawowe informacje o PowerShell Community Extensions, profilu, wersji: Get-PscxVariable lub gvpscx Jak wyświetlić szczegółowe informacje o PowerShell Community Extensions, profilu, wersji Shella: Get-VariableSorted lub gvs dird - to polecenie listuje i wyświetla tylko katalogi. Sort alfabetyczny. Przykład: dird C:\Windows dirx - to polecenie listuje zawartość i wyświetla wyniki alfabetycznie po nazwie członowej pliku. W pierwszej kolejności wyświetla katalogi, a poniżej pliki. Wyświetlenie przełączników Dirx -?. Można zauważyć że polecenie te automatycznie wyświetli ukryte pliki, zaznaczy w statusie oraz czy jest archiwalny. Bowiem w przełącznikach posługuje się konsolowym -Forse. Można tego przełącznika również używać by wyświetlić ukryte pliki tak: Get-Childitem C:\ -Forse lub Dir C:\ -Forse (w konsoli) Jednakże ma gotowy przełącznik filtracji w przykładzie przefiltrowanie po listowaniu ostatnich plikach lub pierwszych -Last lub -First. Więc wyświetlenie 3 ostatnich plików znajdujących się w katalogu C:\ dirx C:\ -Force -Last 3, sama filtracja nie działa z poleceniem Dir czy Get-Childitem. Możliwość filtracji po nazwie członowej pliku: dirx C:\ F* Możliwość filtracji po rozszerzeniu pliku dirx C:\ *.sys dirs - to polecenie listuje zawartość i wyświetla wyniki posortowane pod wględem wielkości pliku (lenght) dirt - to polecenie listuje zawartośc i wyświetla wyniki posortowane pod względem ostatniego czytania, otwarcia pliku (LastWriteTime) dirw - to polecenie listuje zawartość, wyświetla w pierwszej kolejności katalogi zaznaczając je w klamrze. Dobiera sort kolumnowy - sam decyduje w ilu kolumnach ma wyświetlać wyniki. Get-DiskUsage (skrypt) - ma za zadanie wyświetlić podstawowe informacje na temat dysków. Get-HelpMatch - polecenie te wyszukuje pomocy po wpisaniu interesującego nas wyrażenia. Wyświetlenie przełaczników: Get-HelpMatch -? W Przykładzie. Jak wyświetlić wyniki po wpisanym wyrażeniu: Get-HelpMatch -Verbose Get CD - polecenie to jest typowe i standardowe, ale w tym przypadku przyjmuje inne właściwości. O to nowe funkcje: Jeżeli użyjemy takiej kombinacji: cd.. to wyjdziemy automatycznie z jednego katalogu. Jeżeli użyjemy takiej kombinacji: cd... to wyjdziemy automatycznie z dwóch katalogów. Jeżeli użyjemy takiej kombinacji: cd.... to wyjdziemy automatycznie z trzech katalogów. Jeżeli użyjemy takiej kombinacji: cd..... to wyjdziemy automatycznie z czterech katalogów. Wpisanie Cd -? - wyświetli spis przełączników. Wpisanie samego Cd - wyświetli historię przechodzenia lub wychodzenia z katalogów, a katalog w którym aktualnie się znajdujemy będzie zaznaczony strzałką. Get-FileVersionInfo - polecenie to ma za zadanie wyświetlić informacje na temat wersji pliku, języku, produkcie, itd. W przykładzie sprawdzenie wersji narzędzia do sprawdzania dysku: Get-FileVersionInfo C:\Windows\System32\Chkdsk.exe | Format-List * Format-Byte - polecenie te przelicza jednostki wielkośći. Podawając większe wartośći polecenie te wyświetli dane przeliczając sume bajtów na kilobajty czy megabajty i wyżej. Przykład: 10560 | Format-Byte Możliwość podania konkretnej jednostki, w przykładzie przeliczenie sumy kilobajtów na megabajty: 98645KB | Format-Byte. Możliwośc dodawania wartośći, w przykładzie dodanie 8000000 bajtów do 100MB: 8000000 + 100MB | Format-Byte Dodadkowo dodaje do menu kontekstowego opcje "Open PowerShell Here" :
  16. OneNote PowerShell Provider - Konwertowanie OneNote do Pdf OneNote PowerShell Provider nie tylko pozwala na tworzenie notatek z poziomu konsoli. Wcześniej utworzone notatki można z poziomu konsoli przekonwertować do innego formatu. Polecenie Export-OneNote pozwala na przekonwertowanie pliku OneNote do PDF lub XPS. Wymagania: zainstalowany OneNote 2007 oraz wtyczka, którą trzeba pobrać - 2007 Microsoft Office Add-in: Microsoft Save as PDF or XPS. Uwaga: Jest dostępny Dodatek Service Pack 2 (SP2) dla pakietu Microsoft Office 2007. W dodatku powyższa wtyczka jest zintegrowana z SP2. Downland. Także posiadanie SP2 całkowicie wystarcza. Bez instalacji tego dodatku polecenie nie będzie działać. Jak zacząć? W pierwszej kolejności można przejrzeć dostępne dokumenty OneNote: Get-ChildItem -Path "onenote:\*", otrzymamy spis, wycinek: PSPath: Microsoft.Office.OneNote\OneNote::OneNote\OneNote Powershell Documentation PSParentPath: Microsoft.Office.OneNote\OneNote::OneNote PSChildName: OneNote Powershell Documentation PSDrive: OneNote PSProvider: Microsoft.Office.OneNote\OneNote PSIsContainer: False name: OneNote Powershell Documentation nickname: OneNote Powershell Documentation ID: {C2467364-B7F7-49D0-AAE2-666F7B5FE92E}{1}{B0} path: OneNote\OneNote Powershell Documentation lastModifiedTime: 2008-11-16T15:24:36.000Z color: #B49EDE Section: {About, Scripts, Cmdlets} Przypuśćmy że zostanie przekonwertowana dokumentacja OneNote PowerShell Provider, plik pdf zostanie zapisany na dysku C: Export-OneNote -Path "onenote:OneNote Powershell Documentation" -OutputPath 'C:\Dokumentacja OneNote.pdf' -Format pdf Po udanej operacji, konsola zwróci odpowiednie wartości, jak ścieżka przekonwertowanego dokumentu. To Tyle...
  17. WmiExplorer Script-O-Matic for PowerShell Po raz kolejny PowerShell Guy stworzyli coś co warto opisać. Skrypt GUI czyli okienkowa pomoc, który ma za zadanie listować klasy WMI. Zwyczajnie uruchamiany z konsoli jak skrypt. Narzędzia można również używać łącząc się z innymi komputerami w sieci lokalnej. Żeby wyświetlić klasy znajdujące się na naszej maszynie wystarczy kliknąć CONNECT. Przed uzyskaniem połączenia w dolnej lewej stronie tabeli jest pokazany aktualny stan połączenia i przed uzyciem widnieje "No connect". Klikając Connect zawidnieje informacja z jaką maszyną jest połaczona "connect To: nazwa maszyny". Poniżej w tabeli pojawią się nazwy przestrzenne wmi. Dwuklikiem wybieramy nazwe przestrzenną w tym przykładzie ROOT/CIMV2, jeśli tego nie zrobimy pojawi się informacja "Classes not received yet, DoubleClickNameSpaces to retrieve Classes". Listujemy Klasy!. Klikamy na wybrana nazwę przestrzenną dwuklikniem, ładowanie klas pojawi się informacja "Getting Classes from CIMV2". Następnie w okienku "Classes" poniżej pojawią się klasy Wmi wybrane z określonej przestrzeni nazw. W dolnej lewej części tabeli zawidnieje informacja na zielonym tle o ścieżce nazwy przestrzennej i ilości klas, jak i również ilość klas zostanie pokazana w górej prawej stronie tabeli pod nazwa Classes. Klasy WMI również wybieramy dwuklikiem. W zakładce HELP pojawi się dość szczegółowy opis reprezentacji klasy i wszytsko w naszym języku oraz szczegółowy opis właściwości klasy (properties) oraz również bardzo szczegółowy opis metod jakie można wykonać na obiekcie(methods). Dodakowo w oknie powyżej w są wyświetlone nazwy metod (jeśli nic się nie pojawia i tabela jest pusta oznacza to że na tym obiekcie nie można wykonywac żadnych metod), a dwuklik na wybraną metode spodowuje wyświetlenie przykładowego kodu wykonania w zakładce Methods. Get instances jest to opcja, która gdy jej użyjemy spowoduje wyświetlenie się w zakładce wynikowych właściwości klasy czyli rzeczywistych parametrów działających w komputerze odpowiadające danej klasie. Obok okna w której znajduje się spis metod zuważymy zaptaszkowane pozycje własciwości klasy, które mają się wyświetlać w oknie instance. Można je usuwać i dodawać dowoli. Nie testowałem WmiExplorer na wersji PowerShell 1.0 więc nie moge stwierdzić jak na niej działa. Na wersji V2 działa bardzo dobrze. Skrypt można pobrać z WmiExplorer zaraz pod samymi opisami działania programu. Akutalizacja skryptuWMI explorer update for PowerShell V2 CTP zaraz pod opisem, wykluczająca 2 bugi. Wystarczy podmienić istniejący skrypt. Główna strona projektu: PowerShell WMI Explorer. Warto również wspomnieć o nowym projekcie PowerShell WMI Explorer WPF Edition first beta jest to wersja rozwojowa. Do poprawnego jej działania musi być zainstalowana najnowsza wersja PowerShella oraz .NET Framework 3.0 -> Klik. To tyle.. WMI Explorer by SAPIEN Technologies To kolejna propozycja tej firmy. Narzędzie służy do szybkiego podglądu klas WMI. Wyświetla klasy wmi z wybranej przestrzeni nazw. Podaje takie informacje jak właściwości klasy, metody jakie można wykonywać na klasie, wyświetla informacje z klasy, opis klasy, zależności klasy. Narzędzie charakteryzuje się bardzo małym rozmiarem (56kb), działa bez instalacji i jest dość szybkie w działaniu. Do poprawnego działania aplikacji musi być zainstalowany .NET Framework v2.0. Narzędziownia Sapien WMI Explorer.
  18. Html w Shell Na stronie techstarts-wordpress natrafiłem na skrypcik (klik), który konwertuje dane do pliku html. Ma za zadanie podzielić kolorem stan usług, uruchomione(zielony) - zatrzymane(czerwony) w systemie. Można w nim dodawać własne style dla Html-a, wynik skryptu ze strony wygląda tak: Dodałem style jak waga czcionki, margines, rodzina czcionki, kolor, wielkość, brak wypełnienia komórki, o to efekt: GWMI WIn32_Service | ConvertTo-Html Name,Status, startmode, state, DisplayName | foreach{ if($_ -like "*<TD>Running</TD>*"){$_ -replace "<tr>","<tr p style= 'font-size:11px;padding:5px;font-weight: bold;color: green; font-family: Arial, Helvetica;'>"} else{$_ -replace "<TR>","<TR p style= 'font-size:11px;color: red; font-family: Arial, Helvetica;padding:5px; font-weight: bold;'>"} } | out-file ServiceSort.htm W dziale Windows PowerShell Tip of the Week jest pokazana prezentacja na przykładach , budowy wyglądu dokumentu w css według własnych potrzeb: Tip of the Week Żródło: Microsoft Właściwie tak siedziałem i kombinowałem z kodem ze strony Windows PowerShell Tip of the Week, aż wymodziłem takie coś: pisane na podstawie kodu ze strony M$, jedynie dodałem właściwości i inne style css zmieniające wygląd $a = "<style>" $a = $a + "BODY{background-color:white; Font-Family:Verdana,Times New Roman,Arial;Font-Size: 11px}" $a = $a + "TABLE{border-width: 2px;border-style: solid;border-color: black;border-collapse: collapse;}" $a = $a + "TH{border-width: 2px;padding: 7px;border-style: solid;border-color: black;background-color:#330099;Font-Family:Arial; Font-Size:14px; color:white}" $a = $a + "TD{border-width: 1px;padding: 5px;border-style: dotted;border-color: red;background-color:#ffffcc; color:blue;}" $a = $a + "</style>" Gwmi Win32_Service | Select-Object State, Status, Name, DisplayName, StartMode, ServiceType, ProcessId | ConvertTo-HTML -head $a | Out-File C:\Test.htm W TechNet Magazine jest pokazana prezentacja konwertowania danych do pliku html wraz z własną budową styli css, ale same style są dołanczane w zewnętrznym arkuszu styli: Windows PowerShell Digging Deeper
  19. Select-PropertyValue Filtr pozwala na wygodny sposób odczytania wszystkich właściwości lub ich wartości oraz użyć funkcji debugowania. 56 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 />016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044 045 046 047 048 049 050 051 052 053 054 055 056 057 058 059 />060 061 062 063 064 065 066 067 068 069 070 071 072 073 074 075 076 077 078 079 080 081 082 083 084 # ============================================================================================== # # Microsoft PowerShell Source File -- Created with SAPIEN Technologies PrimalScript 2009 # # NAME: Select-PropertyValue.ps1 # # AUTHOR: Jeffery Hicks , SAPIEN Technologies # DATE : 6/10/2009 # # COMMENT: This function can be used in a pipelined expression # to return all properties of a given object that have a defined value. # # Using an expression like: # # get-process PowerShell | select * # # Is a handy way to see all properties and their values. But sometimes # you may only want to see properties that have actual values. For # those situations, use this function. # # get-process PowerShell | Select-PropertyValue # # This if you dot source this script it will also create an # alias for the function of spv # # get-process PowerShell | spv # # The -debug parameter will turn on debug messages. Use # -NoWMiSystem to filter out WMI System properties like # __GENUS when you pipe a WMI object to the function. # DISCLAIMER AND WARNING: # THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY # KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. # TEST THOROUGHLY IN A NON-PRODUCTION ENVIRONMENT. IF YOU DON'T KNOW WHAT THIS # SCRIPT WILL DO...DO NOT RUN IT! # ============================================================================================== Filter Select-PropertyValue { Param([switch]$NoWMISystem,[switch]$debug) if ($debug) { $debugPreference="Continue" } Write-Debug "In process" if (-Not $properties) { Write-Debug "Creating property list" #get properties for the pipelined object sorted by property name $properties=$_ | Get-Member -membertype Properties | sort Name #filter out WMI System properties if -NoWMISystem if ($NoWMISystem) { Write-Debug "Filtering out WMI System properties" $properties=$properties | where {$_.name -notlike "__*"} } Write-Debug "Found $($properties.count) properties" } #create an empty custom object Write-Debug "Creating empty object" $obj=New-Object PSObject #enumerate the list of properties foreach ($property in $properties) { Write-Debug "Checking $($property.name)" #if object has a value for the current property if ($_.($property.name)) { Write-Debug "found value $($_.($property.name))" #assign properties $obj | Add-Member -MemberType Noteproperty -name $property.Name -value ($_.($property.name)) } #end If } #end ForEach #write the custom object to the pipeline write $obj } #end function Set-Alias -Name spv -value Select-PropertyValue # =============== # #                 # # Przykład użycia # #                 # # =============== # PS> Get-WmiObject Win32_Service | spv -NoWMISystem Caption                 : Karta wydajności WMI CreationClassName       : Win32_Service Description             : Udostępnia informacje biblioteki wydajności uzyskane do dostawców WMI HiPerf. DisplayName             : Karta wydajności WMI ErrorControl            : Normal ExitCode                : 1077 Name                    : WmiApSrv PathName                : C:\WINDOWS\system32\wbem\wmiapsrv.exe ServiceType             : Own Process StartMode               : Manual StartName               : LocalSystem State                   : Stopped Status                  : OK SystemCreationClassName : Win32_ComputerSystem SystemName              : Komputer PS> Get-WmiObject Win32_Service | spv __CLASS                 : Win32_Service __DERIVATION            : {Win32_BaseService, CIM_Service, CIM_LogicalElement, CIM_ManagedSystemElement} __DYNASTY               : CIM_ManagedSystemElement __GENUS                 : 2 __NAMESPACE             : root\cimv2 __PATH                  : \\Komputer\root\cimv2:Win32_Service.Name="WmiApSrv" __PROPERTY_COUNT        : 25 __RELPATH               : Win32_Service.Name="WmiApSrv" __SERVER                : MIKI __SUPERCLASS            : Win32_BaseService Caption                 : Karta wydajności WMI CreationClassName       : Win32_Service Description             : Udostępnia informacje biblioteki wydajności uzyskane do dostawców WMI HiPerf. DisplayName             : Karta wydajności WMI ErrorControl            : Normal ExitCode                : 1077 Name                    : WmiApSrv PathName                : C:\WINDOWS\system32\wbem\wmiapsrv.exe ServiceType             : Own Process StartMode               : Manual StartName               : LocalSystem State                   : Stopped Status                  : OK SystemCreationClassName : Win32_ComputerSystem SystemName              : Komputer ConvertWordToPdf Skrypt pozwala na konwertowanie dokumentów word .doc, docx do pliku pdf. Może okazać się bardzo pomocny, kiedy zachodzi potrzeba konwertowania kilkudziesięciu lub więcej dokumentów jednocześnie, czyniąc pracę wygodniejszą i mniej czasochłonną. Wymagania: Word 2007, dodatek: 2007 Microsoft Office Add-in: Microsoft Save as PDF or XPS 57 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 />016 017 # NAME: ConvertWordToPdf.ps1 $wdFormatPDF = 17 $word = New-Object -ComObject word.application $word.visible = $false $folderpath = "c:\Test*" $fileTypes = "*.docx","*doc" Get-ChildItem -path $folderpath -include $fileTypes | foreach-object ` { $path = ($_.fullname).substring(0,($_.FullName).lastindexOf(".")) "Converting $path to pdf ..." $doc = $word.documents.open($_.fullname) $doc.saveas([ref] $path, [ref]$wdFormatPDF) $doc.close() } $word.Quit() ConvertFrom-DMTFDate Filtr pozwala na konwertowanie dat WMI 58 [color= #fff; background-color: #012456][PS:10][/color] [color= #ff0; background-color: #012456]Get-WmiObject[/color] [color= #0ff; background-color: #012456]Win32_NTLogEvent[/color] [color= #088; background-color: #012456]|[/color] [color= #ff0; background-color: #012456]where[/color] {[color= #0f0; background-color: #012456]$_[/color][color= #088; background-color: #012456].[/color]logfile [color= #088; background-color: #012456]-eq[/color] [color= #0ff; background-color: #012456]"ProcessWatcher"[/color]} [color= #088; background-color: #012456]|[/color] >> [color= #ff0; background-color: #012456]ConvertFrom-DMTFDate[/color] [color= #088; background-color: #012456]|[/color] >> [color= #ff0; background-color: #012456]ft[/color] [color= #0ff; background-color: #012456]Message[/color][color= #088; background-color: #012456],[/color] [color= #0ff; background-color: #012456]LogFile[/color][color= #088; background-color: #012456],[/color] [color= #0ff; background-color: #012456]TimeGenerated[/color][color= #088; background-color: #012456],[/color] [color= #0ff; background-color: #012456]TimeWritten[/color] [color= #ff0; background-color: #012456]-AutoSize[/color] >> Message Logfile TimeGenerated TimeWritten ------- ------- ------------- ----------- mmc.exe... ProcessWatcher 2009-06-15 10:15:59 2009-06-15 10:15:59 mmc.exe... ProcessWatcher 2009-06-15 10:15:55 2009-06-15 10:15:55 mmc.exe... ProcessWatcher 2009-06-15 10:15:51 2009-06-15 10:15:51 cmd.exe... ProcessWatcher 2009-06-15 10:15:44 2009-06-15 10:15:44 cmd.exe... ProcessWatcher 2009-06-15 10:15:42 2009-06-15 10:15:42 iexplore.ex... ProcessWatcher 2009-06-15 10:15:37 2009-06-15 10:15:37 iexplore.ex... ProcessWatcher 2009-06-15 10:15:34 2009-06-15 10:15:34 mmc.exe... ProcessWatcher 2009-06-15 10:15:32 2009-06-15 10:15:32 [color= #fff; background-color: #012456][PS:11][/color] [color= #ff0; background-color: #012456]Get-WmiObject[/color] [color= #0ff; background-color: #012456]Win32_NTLogEvent[/color] [color= #088; background-color: #012456]|[/color] [color= #ff0; background-color: #012456]where[/color] {[color= #0f0; background-color: #012456]$_[/color][color= #088; background-color: #012456].[/color]logfile [color= #088; background-color: #012456]-eq[/color] [color= #0ff; background-color: #012456]"ProcessWatcher"[/color]} [color= #088; background-color: #012456]|[/color] >> [color= #ff0; background-color: #012456]ft[/color] [color= #0ff; background-color: #012456]Message[/color][color= #088; background-color: #012456],[/color] [color= #0ff; background-color: #012456]LogFile[/color][color= #088; background-color: #012456],[/color] [color= #0ff; background-color: #012456]TimeGenerated[/color][color= #088; background-color: #012456],[/color] [color= #0ff; background-color: #012456]TimeWritten[/color] [color= #ff0; background-color: #012456]-AutoSize[/color] >> Message LogFile TimeGenerated TimeWritten ------- ------- ------------- ----------- mmc.exe... ProcessWatcher 20090615101559.000000+120 20090615101559.000000+120 mmc.exe... ProcessWatcher 20090615101555.000000+120 20090615101555.000000+120 mmc.exe... ProcessWatcher 20090615101551.000000+120 20090615101551.000000+120 cmd.exe... ProcessWatcher 20090615101544.000000+120 20090615101544.000000+120 cmd.exe... ProcessWatcher 20090615101542.000000+120 20090615101542.000000+120 iexplore.ex... ProcessWatcher 20090615101537.000000+120 20090615101537.000000+120 iexplore.ex... ProcessWatcher 20090615101534.000000+120 20090615101534.000000+120 mmc.exe... ProcessWatcher 20090615101532.000000+120 20090615101532.000000+120 Set-LocalPassword Pozwala zmienić (ustawić) lokalne hasło konta na jednym lub większej liczbie komputerów. Przykład: Klik 59 Prevent-Screensaver Pozwala na "imitację" aktywności użytkownika, co ma zapobiec pojawianiu się wygaszacza ekranu. Domyślnie jest to 60 minut. 60 rtfPSHighlighter Skrypt dobry do prezentacji, w oddzielnym oknie WPF prezentuję składnię kodu w kolorze wybranego skryptu. Wymagania: PS 2.0, testowane w CTP3. 61 g Funkcja pomocna do przechodzenia w konsoli do innych katalogów, poprzez skróty - aliasy, które w prosty sposób można dodawać własne. 62 Usuwanie pustych podkatalogów Funkcje pomocne do usuwania pustych podkatalogów w głównym katalogu. Puste katalogi zostaną również usunięte. FindFolder Powershell function to remove empty directories 63 Prune-Directory Prune Directories with PowerShell 64 Set-FileLines Skrypt ma za zadanie usuwać puste wiersze w plikach tekstowych. Uruchomienie bez parametru usunie wszystkie puste wiersze.Parametr -lines (opcjonalny) pozwala określić ile wierszy ma pozostać w pliku, usuwa każde wiersze. 65 CreateCab Skrypt służy do tworzenia archiwum .Cab 66 Find-String Skrypt wyszukuje tekstu w plikach. Autor twierdzi że działa szybciej niż grep i ack. Korzysta z Out-ColorMatchInfo do podświetlenia kolorem wyniku. Download (Find-String & Out-ColorMatchInfo) 67 Edit-File in Notepad++ Funkcja pozwala na edycję kodu źródłowego w Notepad++. Parametrami można określić czy ma zostać otwarty jeden plik czy wiele, uruchomić notatnik bez wtyczek, uruchomić bez zapamiętania poprzedniej sesji, otworzyć w konkretnym numerze wiersza, wybrać kolorowanie składni, otworzyć plik w trybie "tylko do odczytu", wyłączyć karte interfejsu. 68 Out-Notepad Funkcja pozwala na przesłanie wyniku do pliku tekstowego i automatyczne otwarcie w notatniku. 69 Get-SourceAsHTML Funkcja pozwala na zapis do pliku html wybranego skryptu z kolorowaniem składni. Aby zapisać dane do schowka systemowego należy mieć zainstalowany PSCX. #---------------------------------------------------------------- # function Get-PrimeFactors #---------------------------------------------------------------- function Get-PrimeFactors() { param([uint64]$number = $null); [uInt64[]]$factors = @(); if ( $number ) { [uInt64]$max = [Math]::Sqrt($number); # iterate from 2 to the Sqrt of $number for([uInt64]$factor=2; $factor -le $max; ++$factor) { # Iterate through until we get to the first factor (modulus eq 0). if ( ($number % $factor) -eq 0 ) { # If modulus zero then it's divisible so add it to the array $factors += @($factor); # Call function recursively on the number divided by the factor. $number /= $factor; $subfactors = Get-PrimeFactors $number; if ( ($null -ne $subfactors) -and ($subfactors.Length -ne 0) ) { $factors += $subfactors; } else { $factors += @($number); } break; } } } $factors; } 70 Replace-InTextFile Skrypt pozwala na zamienienie tekstu na inny w pliku tekstowym. 71 Install-Module Funkcja pozwala na instalację pojedyńczego modułu do katalogu Modules lub do innej lokalizacji oraz na wszystkich kontach w systemie. Wystarczy podać lokalizację modułu, a funkcja utworzy dla niej folder o takiej samej nazwie i przeniesie całość w wyznaczone miejsce. Jest to dość wygodne oraz rozwiązuje problem, gdy omyłkowo folder posiada błąd w nazwie i konsola ma kłopot z uruchomieniem samego modułu. 72 Get-KbInfo Get-KbInfo pozwala na szybkie odczytanie w artykule bazy wiedzy Microsoft informacji o pliku lub poprawce. 73 Out-HTMLTable Funkcja tworzy zaawansowany raport html z możliwością sortowania wyników. Wymaga wprowadzenia przynajmniej dwóch właściwości klasy czy obiektu oraz wprowadzenia ścieżki i nazwy istniejącego folderu do zapisania wyniku. Jeśli folder nie istnieje to zostanie utworzony. Funkcja tworzy trzy pliki - plik html, plik css oraz skrypt .js , który umożliwia sortowanie wyników w pliku html. Parametrem pozwala określić tytuł raportu w oknie przeglądarki. 74 Format-Hex Wyświetla pliki w formacie szesnastkowym. Coś w stylu edytora heksadecymalnego. 75 Get-SysInternalsHelp Funkcja łączy się z witryną Sysinternals i pobiera wszystkie pliki pomocy, konwertując ją do plików pomocy PowerShella z których pomocy można korzystać poleceniem Get-Help 76 Take-Screenshot Skrypt pozwala wykonać zrzut całego ekranu lub aktywnego okna i zapisać do pliku (jpg,png,bmp). Domyślny format zapisu to bmp. 77 ConvertDoc-ToHtml Skrypt pozwala przekonwertować dokument Word (doc, docx) do formatu Html. Wygodne bo umożliwia konwersję całej grupy plików. 78 Search-WmiNamespace Szuka klas wmi. Parametrami można określić czy ma szukac tylko klasy, klasy lub właściwości czy wyszukiwać klasy, właściowści, oraz opisy, które podane są we wzorcu. 79 Search-Help Search-Help szuka w dokumentacji Pomocy PowerShella zadanego słowa kluczowego. 80 Demo-HereString Pozwala na dodanie pomocy do skryptu z wyborem opcji. 81 Get-SysInternals (Keep in-sync with SysInternals tools) Pobiera, aktualizuje narzędzia SysInternals za pomocą usługi SysInternals Live. Domyślnie tworzy folder sysint na dysku C:\. Tworzy ChangeLog z dziennikiem zdarzeń w katalogu źródłowym. Do poprawnego działania musi być uruchomiona usługa systemowa WebClient. 82
  20. Skrypty PowerShell Get-ConsoleAsHtml Jest to zwykły skrypt, ale jaki!!! Potrafi zapisać do pliku html to co robiliśmy czy robimy aktualnie w konsoli zachowując przy tym lustrzane odbicie wnętrza konsoli. Bardzo dobre do prezentacji czy dokumentacji, zamieszczenia na stronę www. Przykład: Posh.html (tymczasowo niedostępny). Testowałem na CTP3.1 Copy-Console Jest to również skrypt, który wykonuje lustrzaną kopie konsoli, zapisując do schowka systemowego, którą można wkleić do programu Word. Downland na dole strony.Przykład 2 Get-ConsoleAsText Skrypt, który zapisuje wszystkie czynności, które były wykonywane w konsoli, jako tekst do pliku txt lub dokumentu Word.Przykład 3 Copy-Script To kolejna wariacja. Skrypt ma za zadanie kopiować do schowka systemowego inny skrypt z edytora CTP3, zachowując w pełni strukturę koloru składni, który można wkleić np. do dokumentu Word. Skrypt utworzy nowe menu Copy Script w edytorze, które użyte skopiuje edytowany skrypt do schowka systemowego. Downland na dole strony.Przykład 1 , przykład 2 4 Set-ClipboardScript Skrypt, który spełnia podobne zadanie co do podanych wyżej. Funkcja kopiuje inny skrypt do schowka systemowego zachowując składnię koloru w formacie RTF lub HTML. Przykład użycia w samej konsoli: Przykład PS> Set-ClipboardScript.ps1 "D:\Skrypty\TwójSkrypt" 5 Start-DrawingMode Całkowicie zapomniałem o tym skrypcie, a jest dostępny od jakiegoś czasu. Funkcja skryptu przyda się do prezentacji, umożliwia zaznaczanie "piórem" kawałka kodu z możliwością zmiany koloru, grubości lini, minimalizowania zaznaczenia, czyszczenia zaznaczenia z możliwością dalszego użycia, funkcjonalność podobna do ZoomIt, jednakże nie posiada lupy. Działa w ISE.Przykład 6 Get-UpTime Skrypt podaje czas startu komputera lub czas od ostatniego restartu. Prawidłowo działa w wersji konsoli CTP3.Przykład 7 Get-SystemBootupTime Skrypt pełni tą samą funkcję co podany wyżej, jednakże podaje dokładną godzinę startu systemu lub restartu.Przykład 8 Get-WindowsKey Skrypt umożliwia pobranie klucza produktu systemu Windows, który był użyty podczas instalacji systemu. Skrypt działa w systemach Windows XP, Vista x64, Windows 7 x64 oraz Windows Server 2003 i Windows Home Server. Skrypt umożliwia pobranie klucza produktu zdalnie lub lokalnie.Przykład 9 Show-WmiClass Jeśli chcemy znaleść konkretną klasę czy grupę i nie chce się wpisywać stosu poleceń, wystarczy użyć tego skryptu. Show-WmiClass jest to wyszukiwarka klass, można także szukać klas w innej przestrzeni nazw.Przykład 10 Start-Colourizer Bardzo fajny skrypt, który w czasie rzeczywistym koloruje składnię pisanego skryptu czy poleceń w konsoli.Przykład 11 Limit-FileAge Skrypt pozwala na filtrowanie plików po ostatniej modyfikacji co pozwala na uporządkowanie zawartości folderów i zrobienie porządku. Można filtrować po najświeższej modyfikacji pliku lub najstarszej. Dobre bo nie trzeba rozisywać poleceń, a jedynie określić próg czasowy.-minimumage -maximumage Przykład 12 Convert-PowerPack2Ps1 Skrypt konwertuje pliki PowerPack , które tworzone są dla PowerGUI,poszerzające program o nowe możliwości do formatu pliku PS1 i pozwala korzystać z ich funkcji w PowerShellu. Działa w PowerShell V1 i V2, w wersji CTP3 mogą pojawić się problemy.Przykład 13 Get-MicrosoftUpdates Skrypt umożliwia dokłady przegląd zainstalowanych aktualizacji systemowych pobieranych z witryny WindowsUpdate poprzez usługę automatyczne aktualizacje, listuje szczegółowy opis pobranej aktualizacji, adres, itp, nie wykaże aktualizacji pobranych ręcznie, aby uzyskać pełną listę należy z poziomu wmic, użyć aliasu qfe, z poziomu PS - klasy Win32_QuickFixEngineering (alias Qfe korzysta z tej samej klasy) lub w wersji konsoli V2 jest dostępne polecenie Get-HotFix jednakże nie uzyskamy tak szczegółowego opisu aktualizacji. Do działania, wymaga uruchomionej usługi Automatyczna aktualizacja.Przykład 14 ListSoftwareUpdates Skrypt umożliwia przegląd aktualnie dostępnych aktualizacji dla systemu, pobieranego za pośrednictwem witryny Windows Update. Wyświetla szczegółowe informacje dla każdej aktualizacji. Do działania, wymaga uruchomionej usługi Automatyczna aktualizacja.Przykład 15 Copy-FilePlus Skrypt umożliwia funkcję kopiowania pliku z jednej lokalizacji do innej, wyświetlając w GUI postęp kopiowania. Wymagania: PS V2 CTP3.Przykład 1 , przykład 2 16 Get-WMILocalTime Skrypt umożliwia uzyskanie czasu lokalnego, wyświetla takie wartości, jak dzień w tygodniu, tydzień w miesiącu, kwartał,itp. Do skryptu można dodać np. dzień w roku - More Fun with Dates (and Times). Wymagania: PS V2 CTP3.Przykład 17 Get-DiskFreeSpace Skrypt umożliwia uzyskanie informacji na temat dysku, listując, takie wartości, jak: rozmiar dysku, procent zajętego miejsca, typ plików, ilość wolnego miejsca. Wymagania: PS V2 CTP3.Przykład 18 Get-PerformanceHistory Skrypt umożliwia listowanie historii poleceń, jakie zostały użyte w konsoli, jest zamiennikiem polecenia Get-History, jednakże wyświetla średni czas uruchomienia się polecenia Average oraz czas trwania polecenia Duration. Wersja skryptu umozliwia pracę w PS 1.0, ja testowałem w V2 CTP3. Samo użycie bez przełącznika, wykaże listing ostatniego polecenia, natomiast przełącznikiem -Count, wybieramy liczbę ostatnich użytych poleceń w historii. O rozwoju skryptu będę informował.Przykład 19 Print-File Całkiem fajny skrypt, który umożliwia drukowanie dokumentów Word czy Pdf oraz plików OneNote 2007, Excel 2007 z poziomu konsoli. Pozwala na rekrusywne przeszukanie wybranego katalogu i wydrukowanie całej grupy dokumentów znajdujących się w nim lub drukowanie wybranego dokumentu. Więcej na temat funkcji znajdziecie w temacie Print-File Function. Testowałem w PS V2 CTP3. Przykład Jak wydrukować grupe dokumentów znajdujących się w wybranym katalogu: dir *.doc -r | print-file Jak wydrukować wybrany dokument: print-file c:\downloads\myfile.pdf Word 2007 print-file X:\MójPlik.docx 20 IsAdmin Skrypt umożliwia sprawdzenie czy inny skrypt, polecenie zostało uruchomione z uprawnieniami administratora, pokazując wartość True lub False.21 Profile Skrypt umożliwia ładowanie wybranych funkcji w profilu PowerShell z zewnętrznego pliku, jest to dość wygodne rozwiązanie jeśli skrypt jest większych rozmiarów, a profil posiada takich kilka. W profilu umieszczamy ten niewielki skrypcik w którym podajemy lokalizację wybranego skryptu. Downland na dole strony.22 Set-PowerGUIWelcomePage Skrypt umożliwia zmianę strony powitalnej nakładki PowerGUI, którą to można dostosować do własnych potrzeb. Czy to prywatnie czy to w firmie, wstawiając logo lub jakąś informację czy też zmienić dla estetyki. Wersja skryptu jest zaktualizowana, umożliwia teraz przywrócenie domyślnej strony powitalnej: Set-PowerGUIWelcomePage.ps1 -ResetToDefault $true Przykład W skrypcie należy podać ścieżkę do pliku, który ma zmienić wygląd strony powitalnej, zapisany w formacie MHT, WORD. Przykład Więcej znajdziecie na Dmitry's PowerBlog UpDate: Set-PowerGUIWelcomePage v1.3 - wersja ta jest zgodna z PowerGui 1.8 23 Copy-Data To kolejna wariacja skryptu, który umożliwia kopiowanie plików pomiędzy folderami, wyświetlając w pasku stanu, procent skopiowanych plików. Przykład 24 Replace-Word Skrypt ten pozwala na manipulację tekstu w dokumentach Word, a dokładniej daje możliwość zastąpienia istniejącego tekstu nowym w całym dokumencie. Może być to dość przydatne jeśli dokument jest większych rozmiarów, a do poprawy czy zmiany tekstu jest mało czasu. Udana operacja zmiany tekstu w konsoli zwraca wartość True. Przykład: Przykład 1 , przykład 2 PS> Replace-Word -Document 'C:\Przykład.docx' -Replace "StaryTekst" -NewText "NowyTekst" lub Replace-Word 'C:\Przykład.docx' "StaryTekst" "NowyTekst" 25 TreeForm Skrypt pozwala na listowanie wybranej lokalizacji na dysku, wyświetlając dane w postaci drzewa katalogów, posortowanych alfabetycznie z rozmiarem i liczbą plików w formie rozwijanej listy w GUI. Puste katalogi odznaczone są kolorem. Skrypt domyślnie listuje katalog Temp. Downland na dole strony. Przykład UpDate: 2009/06/01 klik (dodano funkcję debugowania) 26 Tree Skrypt pozwala na listowanie wybranej lokalizacji na dysku z poziomu konsoli w formie drzewa, wyświetlając ilość i rozmiar plików w katalogu czy podkatalogu z wyświetleniem sumy ilości podkatalogów w przeszukiwanej lokalizacji. Skrypt domyślnie listuje katalog Temp. Downland na dole strony. Przykład 27 AddPowerShellShortcutQuickLaunch Skrypt pozwala na stworzenie skrótu PowerShell w pasku zadań. W kodzie można wprowadzić argumenty, takie, jak: uruchamianie bez loga programu, bez profilu, wybrać skrót klawiaturowy czy uruchamiać w danej lokalizacji. Przykład 28 Restart-PowerShell Skrypt pozwala na restartowanie powłoki PowerShell. Skrypt należy umieścić w profilu. Starsze wersje znajdują się w temacie Restart your engine - The PowerShell way Przykład 29 Out-Balloon Skrypt pozwala tworzyć baloniki informacyjne w obszarze powiadomień - zasobnika systemowego. Wymagania: PS V2 CTP3. Dane wprowadzane są bardzo łatwo bo parametrami: Parametry: -Text (pozwala wstawić tekst opisowy) -iconFile (pozwala wstawić wybraną ikone w zasobniku systemowym, domyślną ikoną jest ikona PowerShella) -TimeoutSeconds (pozwala ustalić czas trwania dymka, czas domyślny - 3 sekundy) -Title (pozwala wstawić tytuł informacji w dymku) -BuiltInIcon (pozwala wstawić ikonę informacyją w dymku) Ikony informacyjne: warning (Ostrzeżenie) error (Błąd) info (Informacja) Przykład użycia: Out-Balloon -text "Polecenie nie zostało wykonane" -Title "Błąd" -BuiltInIcon error -TimeoutSeconds 10 Out-Balloon -Text "Polecenie nie zostało wykonane" Więcej przykładów znajdziecie korzystając z pomocy: Get-Help X:\Out-Balloon.ps1 -Example Więcej na temat parametrów znajdziecie korzystając z pomocy: Get-Help X:\Out-Balloon.ps1 -Parameter * Uwaga: Skrypt może ulec aktualizacji. 30 Get-PrinterTestPage Skrypt ten umozliwia wydrukowanie strony testowej wszystkich drukarek zainstalowanych w systemie. Skrypt pobiera wszystkie drukarki, a następnie stara się wydrukować stronę testową. Udany wynik zwraca wartość 0. Brak mozliwości wyboru drukarki. Wymagania: PS V2 CTP3. Przykład 1 ,przykład 2 31 Get-Parameters Skrypt umożliwia otrzymać listę dostępnych parametrów dla wybranego cmdletu. Przykład użycia: PS>Get-Parameters Get-Alias KEY ...................... Name Exclude Scope Definition 32 Get-Fan Skrypt umożliwia otrzymać listę właściwości wentylatora w systemie. Na przykład, wiatraczek chłodzący CPU. Może być przydatny do analizy. Skrypt korzysta z klasy Win32_Fan. Wymagania: PS V2 CTP3.33 UpDate-SysInternals Skrypt pozwala na pobieranie czy aktualizowanie narzędzi Marka Russinovicha i Bryce Cogswella ze stajni SysInternals. Pozwala określić katalog docelowy. Możliwość pobierania pojedyńczych narzędzi do wybranej lokalizacji. Dodatkowo zostaną wykonane kopie zapasowe poprzednich wersji narzędzi. Przykład Pobierz: UpDate-SysInternals.ps1.Txt Get-SysInternals To kolejna wariacja skryptu, który umożliwia na przegląd dostępnych narzędzi z witryny SysInternals, na aktualizację narzędzi, na sprawdzenie i pobranie narzędzi, które nie wystepują w systemie, pobranie pojedyńczego narzędzia, skrypt automatycznie sprawdza ścieżkę po czym wykonuje aktualizację -> Get-SysInternals (script to update your tools) 34 Get-EnvPath To mała funkcja, która ma za zadanie wyświetlić listę ścieżek znajdujących się z zmiennej środowiskowej. Przykład 35[/b] New-Script 2 Pozwala utworzyć nowy skrypt z serii poleceń zachowanej w historii podczas sesji lub skopiować je do schowka systemowego. Przykład: New-Script NowySkrypt 4 -tworzy skrypt z ostatnich czterech komend New-Script Clipboard -id 10,11,12,14 -wysyła wybrane polecenia z historii do schowka systemowego. Uwaga: Clipboard korzysta z Cmdletu zawartegp w PSCX - Out-Clipoard, uruchomienie omawianego skryptu automatycznie doda snap-in PSCX do sesji, aby skorzystać w tej funkcji. Notepad (New-Script NowySkrypt 20) -wysyła dwdzieścia ostatnich poleceń użytych w historii do skryptu NowySkrypt, a następnie otwiera go w notatniku. Skrypty zostaną zapisane w bierzącym folderze, jakim się znajdujemy. Przykład Źródło skryptu: Creating PowerShell Scripts from your Command History 36 Start-ProcessAsAdministrator Skrypt pozwala na uruchomienie dowlonego programu z poziomu konta administracyjnego. Wprowadza identyczny monit "Uruchom jako" i pozwala wybrać konto. Jest to dość wygodna metoda. Przykład 37 Out-Zip Skrypt pozwala na tworzenie archiwum z plików lub katalogów. Pozwala na rekrusywne przeszykanie katalogu czy katalogów i stworzenia urchiwum po typie plików. Przykład 38 Create-myZIP Skrypt również pozwala na tworzenie archiwum. Wyświetla w pasku stanu przebieg operacji. Pozwala także stworzyć archiwum w chierarchi plików i folderów czyli zachować drzewo. Przypuścmy że mamy katalog ze z różnymi plikami i zdjęciami, a w nim podkatalogi, które również posiadają zdjęcia. Chcemy stworzyć archiwum tylko ze zdjęciami z zachowaniem drzewa katalogów. Do tego posłuży parametr -IncludeSubDir. Do tej czynności skrypt używa darmowej biblioteki ICSharpCode.SharpZipLib.dll, którą można pobrać stąd. Domyślna lokalizacja biblioteki "C:\Documents and Settings\UserProfile" Przykład 1 , przykład 2 Paczka PSCX zawiera praktycznie taki sam cmdlet Write-Zip, którym można wykonać tą samą czynność. Jednakże nie każdemu może być potrzebny cały zbiór, a właśnie pojedyńcza funkcja. 40 Out-Report Pozwala wysyłać wyniki do programu Excel, PDF czy pliku obrazu .jpeg. Aby skrypt mógł działać poprawnie wymagane jest: Pobranie i zainstalowanie Microsoft Report Viewer 2008 SP1 Redistributable lub wersje wcześniejsze, ja testowałem na Microsoft Report Viewer Redistributable 2008 oraz ReportExporters do eksportowania do pliku Pdf, Excel, obrazów, całkowicie darmowy, nie wymagający instalacji, dostępny w codeproject. Po pobraniu i wypakowaniu, aplikację należy umieścić w folderze "Libraries" w domyślnej lokalizacji "C:\". Przykład: get-alias | out-report "c:\aliasy.pdf" pdf Konsola , Excel , Pdf 41 Get-HotFix Funkcja pozwala na wykaz zainstalowanych poprawek systemowych zdalnie lub lokalnie, jako uzupełnienie funkcjonalności w konsoli V1, wersja V2 posiada juz taki cmdlet.42 Get-WmiNamespace Pozwala na przegląd nazw WMI lokalnie lub zdalnie. Przykład 43 Get-FolderUsage Pozwala sprawdzić rozmiar katalogu czy grupy katalogów. Downland na dole strony. Przykład 44 Scan-Port Pozwala skanować lokalne porty lub na zdalnej maszynie oraz wykonać test portów. Użycie: Scan-port -ComputerName XXX -ports 135, 445, 1024 Przykład 45 Get-Spelling Pozwala sprawdzić ortografię języka angielskiego. Wyświetla porpozycje i sugestie dla danego słowa z witryny Yahoo, Cdyne. Przykład 46 GetServiceCreateWordTable Całkiem fajny skrypt i dodatkowo także w VBS. Pozwala zebrać wyniki do programu Word 2007, ustawia każde własności w kolumnach. Wstawianie dodatkowych kolumn jest dość proste i można korzystać z różnych klas dla uzyskania różnych informacji. Fomatowanie używa metody AutoFormat, który to posiada gotowe "szablony". Jest ich około 43. Zresztą można tworzyć własne. W powyższym linku są dokumentacje metody. Po czym tworzyć dokumentacje w pdf. Przykład: $objTable.AutoFormat(20) 47 Get-ChildItemRecurse Funkcja pozwala na rekrusywne wyszukiwanie plików czy podkatalogów z określeniem poziomu wyszukiwania. Im wyższy poziom, tym wyszukiwanie jest bardziej szczegółowe, jak wykaz podlatalogów, plików w podkatalogach, bez podkatalogów. Wymagania: PS v2 CTP3Przykład Parametr -FileGlob pozwala na wyszukanie pliku czy podkatalogu według pasującego wzorca. Przykład UpDate: Klik 48 Get-FileVersionInfo Skrypt ten pobiera i wyświetla informacje o wersji pliku, identyczne polecenie posiada pscx. Przykład 49 Get-WindowsUpdate Skrypt ten umożliwia na przegląd dostępnych aktualizacji w witrynie WindowsUpdate oraz na ich pobranie i zainstalowanie. Do poprawnego działania wymaga uruchomionej usługi Aktualizacje automatyczne.Przykład 50 Compile-Help Skrypt ten umożliwia generowanie plików pomocy HTML Help dla aliasów, cmdletów, dostawców, snap-in, które trzeba dodać do sesji, aby została dla nich stworzona pomoc. Do poprawnego działania skryptu należy pobrać HTML Help Workshop, który pozwala tworzyć dokumenty w formacie .chm, kompilację należy wykonać ręcznie. Przełącznikiem -GroupBySnapIn, grupujemy cmdlety w osobnych tematach zestawów. Przełącznikiem -OutDirectory, wybieramy ścieżkę do tworzonych plików pomocy. Get-CompiledHelpDodatkowo funkcją Get-CompiledHelp, możemy korzystać z pomocy ze stworzonego pliku, wywołując interesujący nas cmdlet z poziomu konsoli, który zostanie otwarty w pliku. Przykład: Get-CompiledHelp Export-OneNote Domyślna lokalizacja pliku pomocy - C:\, jeśli plik będzie w innej to nie zostanie wywołana pomoc, więc w skrypcie należy ustawić ściężkę pliku w którym aktualnie się znajduje. Uwaga! Aby móc skorzystać z pomocy cmdletów innych wydawców poleceniem Get-CompiledHelp z poziomu konsoli, konkretny snap-in musi być dodany do sesji, w innym przypadku pomoc będzie niedostępna. Test przeprowadzony w systemie: XP SP3, PS V2 CTP3 Pobierz próbkę pliku pomocy (CTP3), zawarte są w niej paczki innych wydawców Pscx 1.2, OnetNote Provider, Pshx-SAPIEN, ITVisions_PowerShell_Extensions, SDMSoftware.PowerShell.GPMC, VMware, GetGoogleGeocodeSnapin, Com.H9Labs.PS.Commands -> Download - tymczasowo niedostępny 51 Get-BufferHtml Jest to kolejna wariacja, która wykonuje lustrzaną kopię konsoli do html-a. Dodakowo pozwala parametrami zmienić wielkość czcionki -fontsize, ustalić inną czcionkę-font, ustalić ilość ostatnich linii, które mają zostać zawarte w pliku html -last , usuwac puste spacje -trim, wprowadzić styl -palette, style: PowerShell - zachowuje lustrzaną kopię wnętrza konsoli (wartość domyślna) Standart - zmienia kolor na DarkMagenta i DarkYellow, wyszczególniając komunikaty konsoli Print - nadaje się do wydruku, zmienia kolorystkę na jasno-szarą. Przykład użycia: Get-BufferHtml -fontsize 12 -font 'Courier' -last 20 > Konsola.html Przykład: Tymczasowo niedostępny. 52 Get-ChildItemColor Skrypt pozwala przeszukiwać katalogi sortując typy plików w określonych kolorach. Źródło: Get-ChildItem (dir) Results Color-Coded by Type Przykład: klik. 53 One-Liner Skrypt pozwala przeszukiwać katalogi w poszukiwaniu pojedyńczych skryptów, wykazać ich nazwę, ścieżkę, datę utworzenia, ostatnią modyfikację, podpis cyfrowy. Przykład: klik. 54 Get-Packet Wyświetla wszystkie przychodzące pakiety IP. Przykład: klik. 55
  21. Moduły PowerShell Get-ChildItem Jest modułem, który ułatwia listowanie dysku po atrybutach plików, skracając pisanie kodu, używając przełączników. Stosowany może być poleceniem Get-Childitem, aliasem gci, Dir oraz Ls. W przyładzie listing ukrytych folderów znajdujących się na dysku C:PS>Dir C:\ -a:dh Przykład 1 ISEDemo To dość ciekawy moduł, który pozwala na pobieranie poleceń z pliku txt i wykonywanie ich z poziomu edytora ISE. Aby uruchomić moduł należy wcześniej uruchomić edytor, a następnie pobrać moduł. Domyślna nazwa pliku txt "Demo" z domyślną lokalizacją "C:\Documents and Settings\UserProfile". Otwarcie sesji następuje poleceniem Start-Demo, zatrzymanie sesji Stop-Demo. W pliku Demo.txt umieszczamy wybrane, własne polecenia. Wykonanie poleceń następuje z użyciem klawisza enter, skrypt liczy czas wykonania poleceń oraz całą sesję do momentu jej zakończenia. Poleceniem Write-DemoDump otrzymamy spis poleceń zawartych w pliku Demo.txt. Poleceniem Move-PreviousCommand powtarzamy na nowo wykonanie się poleceń w tej samej sesji, a poleceniem Move-SkipCommand możemy opuścić wybrane polecenie zawarte w Demo.txt z działania, lub usunąć, wpisać inne, a skrypt powróci do poprzednio usuniętego. Wymagania: PS V2 CTP3. Przykład 1 , przykład 2 2 PoshCode Moduł umożliwia wyszukiwanie i pobieranie skryptów z witryny PoshCode, aby pobrać skrypt należy wpisać jego ID, pozwala pobrać stronę, zaktualizować moduł. Dostępne wersje są dla V2 CTP3, jak i V1. Downland w lewej części witryny. Przykład 1 ,przykład 2 Invoke-PoshCode Pobiera kod skryptu z witryny PoshCode i realizuje jego zadanie. Wymaga załadowanego modułu PoshCode. 3 TempFiles Moduł pozwala na tworzenie katalogów Temp w bierzącej sesji w konsoli i wysyłaniu do niego wyników, czy dla notatek, dokumentacji czy do przesłania ich pocztą. Funkcją Initialize-TempLocation tworzymy katalog PowerShellTemp w którym znajduje się podkatalog bierzącej sesji pod znawą PIDU procesu PowerShella. Domyślnie katalog jest tworzony w: C:\Documents and Settings\UserProfile\Ustawienia Lokalne\Temp\... Podczas nowej sesji, gdy tworzymy nowy Temp sesji, stara sesja jest usuwana, ale jeśli chcemy ją zachować należy użyć parametru Initialize-TempLocation -NoClobber. Dzieje się tak dlatego iż funkcja sprawdza PID procesu konsoli i porównuje ją z podkatalogiem w PowerShellTemp. Funkcją New-TempDirectory można utworzyć własny temp z wybrana lokalizacją. New-TempFile pozwala tworzyć nowe pliki temp. Out-TempFile pozwala przesłać plik do bierzącego katalogu Temp. Out-Excel wysłać i utworzyć wyniki do Excela. Przykłady: Przesłanie konkretnego wyniku do pliku txt w bierzącego katalogu Temp sesji: Get-Process | Out-TempFile -Text To samo, ale z otwraciem pliku: Get-Process | Out-TempFile -Text -Open Przykład Przesyła wyniki do pliku Excela oraz doda jako załącznik do poczty e-mail Get-Process | Out-TempFile -CSV -Mail Aby móc korzystać z -Mail, należy pobrać funkcję tego samego autora Send-Mapi. Funkcja korzysta z domyślnego klienta poczty e-mail. Pozwala parametrami określić tytuł wiadomości, temat, adresata. Przykład użycia: Get-ChildItem D:\Notatki\*.doc | Send-MAPI -To DoMnie@Forum.com Pobierz Send-Mapi modułem PoshCode: Get-PoshCode 1073 4 Get-Dependency Moduł pozwala sprawdzić zewnętrzne zależności innego modułu czy skryptu, do jakich poleceń odwołuje się skrypt, jakie są wbudowane funkcje, aliasy, cmdlety. Modułu używa się z poziomu edytora ISE. Dodatkowo tworzy niestandardowe menu w ISE -> Show Dependences, które wywołane pozwoli sprawdzić zależności aktualnie edytowanego skryptu.Przykład Get-PSToken - również uzywany z poziomu edytora ISE, służy do wnikliwej analizy edytowanego skryptu lub wybranego. Przykład 5 CJW-ISE-Functions Moduł przeznaczony jest do pracy z edytorem ISE i dodaje do niego trzy funkcje. Get-ISEMatchingLines (All) - zaczerpinięta z edytora Xedit, pozwala na wyświetlenie lini pasujących do danego wzoru z aktualnie edytowanego pliku w oknie ISE. Przykład: All ''Function:" Indent-ISESelection (Indent) - powoduje wycięcie w wierszu o określoną liczbę spacji do prawej strony(domyślnie 4) Outdent-ISESelection (Outdent) - powoduje wycięcie w wierszu o określoną liczbę spacji do lewej strony(domyślnie 4) czyli usuwa białe znaki na początku każdej lini. Przykład Dodatkowo tworzy niestandardowe menu w ISE dla Outdent, Indent oraz powala wykonywanie zadań z użyciem skrótów klawiaturowych odnoszących sie do konkretnej funkcji. Wymagania: PS V2 CTP3 6
  22. Skrypty dla edytora ISE Start-ISE Skrypt pozwala z poziomu konsoli, jak i samego ISE edytować wybrany skrypt lub kilka skryptów, edytowac własny profil, listować wybraną lokalizację w ISE. Dla CTP3. Praktycznie identyczna funkcję pełni skrypt Invoke-ISE (opis w Skrypty dla z.)Przykład 1 Capture-ISEScreen Skrypt dostawia nową funkcję w edytorze ISE, musi być umieszczony w profilu. Pozwala na wykonanie zrzutu ekranowego edytora. Może, kiedyś się przydać.Przykład 2 ISE-CopyOutPutToEditor Skrypt tworzy niestandardowe funkcje w menu edytora, pozwalającą na przesłanie wyniku z okna wykonywalnego do nowego okna edycji, które można zapisać.Przykład 3 ISE-Lines Skrypt tworzy niestandardowe menu. Pozwala na manipulację innego skryptu. Funkcje: Duplicate-Line - Duplikuje bieżący wiersz Conflate-Line - Łączy bieżący i następny wiersz MoveUp-Line - Przesuwa bieżącą linię do góry MoveDown-Line - Przesuwa bieżącą linię w dół Delete-TrailingBlanks - Usuwa końcowe puste ciągi w całości skryptu Przykład 4
  23. Advanced Reporting PowerPack Wymagania: PowerGUI 1.8.0.815 i wyżej PowerPack pozwala na tworzenie zaawansowanych raportów html, dodając pozycję Create report do prawego menu i menu kontekstowego. Wystarczy zaznaczyć grupę danych i użyć opcji Create report. [ramka=PowerPack pozwala na: ] - formatować dane w raporcie - okreslić folder docelowy raportu (lokalizacja domyślna: Moje dokumenty\PowerGUI Exports) - grupować pola po właściwościach - określić czy pola po otwarciu dokumentu mają być widoczne czy nie - określić nazwę raportu - dodać lub usuwać właściwości - automatycznie otworzyć utworzone sprawozdanie - automatycznie otworzyc folder zawierający sprawozdanie - okreslić nazwę grupy dla każdego raportu W PowerGUI 1.8.0.815 możliwość aktualizowania PowerPacka z menu Zarządzanie PowerPackami Prezentacja video, jak używać Advanced Reporting PowerPack Getting started with the Advanced Reporting PowerPack
  24. PowerShell Wallpaper To nic innego jak tapeta z logo PS. Jak do tej pory nie widziałem innych. Tapeta dostępna jest na blogu: $cript Fanatic Script Center Screen Saver Jak już jest tapeta to i wygaszacz ekranu się przyda. Co prawda nie jest to nowość, ale wygaszacz wydaje mi się na tyle orginalny że zachował swoją świeżość sprzed dwóch lat. Jest to wygaszacz rezprezentujący Centrum Skryptów z działu witryny Microsoft. Planem wygaszacza są odbijający od siebie skrypciarze umieszczeni w bąbelkach, nawet zabawnie to wygląda. Pobrać można z witryny Microsoftu lub Scripting Guy-Screensaver. Na razie nie widziałem innych propozycji. Okazyjne tapety na Wasze pulpity od społeczności PowerGui PowerGui lato 2008 PowerGui jesień 2008 PowerGui Gwiazdka 2008 / Nowy rok 2009 Kolęda - Merry Christmas.ps1 PowerGui wiosna 2009 PowerGui lato 2009 PowerGui olimpiada 2010 PowerGui walentynki 2010 PowerGui wiosna 2010
  25. Wrzucę jeszcze: PauseWithTimeout (2000, XP, 2003, Vista) Dla PShella: Pause Pause-Script & Out-More EDIT: Pause until then function Wait-Until { Param ($until,$interval = 600) do {sleep $interval} until ((Get-Date) -ge $until) } Delay Program starszej daty, do wykorzystania wewnątrz pliku wsadowego, pozwala wstrzymać wykonywanie określonego zadania, określić ilość senkund do wstrzymania, przerwać wstrzymanie dowolnym klawiszem, przełącznikiem /S wyłączyć monit.
×
×
  • Dodaj nową pozycję...