Out-Null ili potiskivanje izlaza u Windows PowerShell-u. Prikaz obavijesti korisnicima koji koriste PowerShell Prikaz informacija o uspješnom izvršavanju naredbe powershell

PowerShell je objektno orijentirani softverski stroj i skriptni jezik sa sučeljem naredbeni redak pružajući IT profesionalcima više široke mogućnosti za konfiguriranje operativnim sustavima iz obitelji MS Windows. Jednostavno rečeno, to je vrsta svestranog administracijskog alata. Ovaj će članak raspravljati o osnovnim tehnikama pisanja skripti u PowerShellu koje vam omogućuju da na jednostavan način automatizirate upravljanje Windows okruženjem.

PowerShell nudi i čisto sučelje konzole i potpuno razvojno okruženje PowerShell ISE(Integrirano okruženje skriptiranja) za skripte. Za pokretanje sučelja naredbenog retka unesite powershell u izbornik Run (WinKey + R). PowerShell ISE pokreće se pomoću naredbe "PowerShell ISE" u istom izborniku.

ISE je poželjniji jer pruža više mogućnosti programerima zahvaljujući isticanju sintakse, automatskom dovršavanju koda i drugim značajkama svojstvenim mnogim "velikim" IDE -ovima.

Pisanje i pokretanje skripti

Skripte se spremaju kao datoteke s nastavkom .ps1. Iako je PowerShell već dugo izvorni dio operacijskog sustava Windows, njegove skripte ne možete pokrenuti jednostavnim dvostrukim klikom. Da biste to učinili, desnom tipkom miša kliknite skriptu i odaberite "Pokreni u PowerShell-u".

Postoje i sistemske politike koje ograničavaju izvršavanje skripti. Mozes provjeriti trenutni parametri pravila izdavanjem naredbe Get-ExecutionPolicy. Rezultat će biti jedna od sljedećih vrijednosti:

  • Ograničen- izvršenje skripte je zabranjeno. Standardna konfiguracija;
  • AllSigned- možete pokrenuti skripte potpisane od pouzdanog razvojnog programera; PowerShell će od vas zatražiti potvrdu prije pokretanja skripte;
  • RemoteSigned- možete pokrenuti vlastite skripte ili one koje je potpisao pouzdani programer;
  • Neograničen- možete pokrenuti bilo koju skriptu.

Za početak morate promijeniti postavku politike pokretanja na RemoteSigned pomoću naredbe Set-ExecutionPolicy:

Cmdlets

Cmdleti su naredbe s unaprijed definiranom funkcijom poput uvjetni operatori u programskim jezicima. Imaju nekoliko ključnih značajki:

  • postoje sustavski, korisnički i izborni cmdleti;
  • rezultat izvršavanja cmdleta bit će objekt ili niz objekata;
  • cmdleti mogu obrađivati ​​podatke i slati ih u druge cmdlete;
  • cmdleti ne razlikuju velika i mala slova, pa nema razlike između Get-ADUser, get-aduser i gEt-AdUsEr;
  • znak se koristi kao separator; ...

Svaki cmdlet sadrži glagol i imenicu, odvojene crticom. Na primjer:

  • Get-Process- prikazati trenutne procese koji se izvode na računalu;
  • Get-Service- prikazati popis usluga i njihov status;
  • Get-Content- prikazati sadržaj navedene datoteke, na primjer Get-Content C: \ Windows \ System32 \ drivers \ etc \ hosts.

Ako je potrebno, popis svih dostupnih cmdleta može se prikazati pomoću Get-Help-Category:

Također možete stvoriti vlastite cmdlete.

Opcije

Svaki cmdlet ima nekoliko parametara koji određuju kako radi. PowerShell ISE automatski predlaže sve dostupne parametre i prikazuje njihovu vrstu. Na primjer, Get-Service-NameW * navodi usluge koje počinju s W. Ako zaboravite koje parametre ima uneseni cmdlet, upotrijebite Get-Member. Na primjer, Get-Process | Get-Member:

Ako ne pronađete ono što tražite ili niste sigurni kako ispravno postaviti parametre, možete čak zatražiti primjere pomoću parametra -Examples:

Neki se cmdleti također mogu pozvati pomoću pseudonima, na primjer, umjesto Get-Help, jednostavno možete napisati pomoć.

Prilikom pisanja velikih skripti ili zajedničkog razvoja možete koristiti komentare. Svaki komentar počinje znakom #, a blok komentara je razgraničen kombinacijama znakova<# и #>na početku, odnosno na kraju.

Transporter

PowerShell Omogućuje razmjenu podataka između cmdleta pomoću cjevovoda. Na primjer:

  • GetService | SortObject -Status imovine - sortiranje pokrenutih usluga prema statusu;
  • "Pozdrav svijete!" | Out -File C: \ ps \ test.txt - pisanje teksta u datoteku.

Može se koristiti više cjevovoda. Na primjer, sljedeća skripta navodi nazive svih usluga osim onih zaustavljenih:

Get-Service | GDJE ($ _. Status -eq "U tijeku") | SELECT prikazano ime

Zaključak

Stoga ovaj vodič daje početnicima ideju o tome što PowerShell uopće predstavlja. Također smo pogledali mogućnosti za promjenu politike izvođenja skripte, što je cmdlet, kako komuniciraju pomoću cjevovoda i kako dobiti svojstva željenog objekta. Upamtite, možete koristiti cmdlet Get-Help u slučaju poteškoća.

Windows PowerShell je snažan alat i može učiniti gotovo sve što osoba poželi na svom računalu. Ali jedini problem je što je ovo alat za naredbeni redak i nema ga grafičko sučelje... Međutim, može biti korisno kada sučelje temeljeno na grafičkom sučelju ne radi ili prestane reagirati. Nažalost, glavna stvar je činjenica da običan korisnik nedostatak znanja o korištenju PowerShella u najvećoj mogućoj mjeri. Ali danas ćemo pokušati razgovarati o 10 najboljih PowerShell naredbi koje mogu pomoći korisniku da učini više na Windows 10.

PowerShell naredbe koje će pomoći korisniku da učini više

Prije nego što počnemo, potrebno je naglasiti da su neki od njih cmdleti može mijenjati određene opcije ili konfiguracije na vašem računalu. Cmdlet Je PowerShell skripta koja radi jednu stvar. Stoga, kako biste bili sigurni, prvo stvorite točku za vraćanje sustava. Ako nešto pođe po zlu tijekom izvođenja jednog od sljedećih cmdleta, uvijek možete vratiti računalo.

Razmotrit ćemo cmdleti to može učiniti sljedeće:

  1. Pokrenite svoju aplikaciju UWP.
  2. Potražite pomoć za bilo koji cmdlet.
  3. Dobijte slične naredbe.
  4. Pronađite određenu datoteku.
  5. Pročitajte sadržaj datoteke.
  6. Pronađite informacije o svim uslugama na svom računalu.
  7. Pronađite informacije o svim procesima na računalu.
  8. Instaliranje politike izvođenja.
  9. Kopirajte datoteku ili direktorij.
  10. Izbrišite datoteku ili imenik.

1] Pokrenite aplikaciju UWP

PowerShell je izvrstan alat koji se može koristiti za pokretanje UWP aplikacija u nekoliko sekundi. Ali glavna stvar je ispravno izvršavanje naredbe. Možeš koristiti

Pokreni proces "ms-postavke:"

Naredba je samo za pokretanje aplikacije Postavke sustava Windows UWP. Više o drugim URI -ovima za druge UWP aplikacije možete pročitati ovdje na microsoft.com.

2] Potražite pomoć za bilo koji cmdlet

Ako ikada ne razumijete koju naredbu trebate upotrijebiti za izvršavanje određenog zadatka. Ili ono što radi određeni cmdlet ne morate se brinuti. Za to možete jednostavno koristiti cmdlet Get-Help. Možete ga koristiti na sljedeće načine:

Get-Help Get Help Get-Help -Puno Get-Help -Primjer Get-Help *

Prvi unos ovdje će vam reći kako koristiti ovaj cmdlet. Drugi unos će vam dati jednostavan sažetak određene cmdlet datoteke. Treći unos će dati detaljne informacije o odgovarajućem cmdlet -u. Četvrti unos sadržavat će sve što prikazuje treći cmdlet, ali će dodati primjer kako se koristi taj cmdlet. Konačno, peti cmdlet će navesti svaku naredbu koja vam je dostupna za korištenje.

3] Nabavite slične naredbe

Da biste pronašli naredbe sličnog tipa ili koji sadrže određenu frazu, možete koristiti cmdlet Get-Command... Međutim, ne navodi svaki cmdlet u PowerShellu, pa koristite neke posebne filtre. Možete koristiti sljedeće naredbe:

Get -Command -Naziv Get -Command -CommandType

Prvi cmdlet pomoći će vam pronaći cmdlet s određenom frazom, a drugi će vam pomoći da filtrirate cmdlete koji izvode određenu funkciju.

4] Potražite određenu datoteku

Ako trebate pronaći određenu datoteku ili direktorij na određenom mjestu, možete koristiti cmdlet Get-Item... Možete ga koristiti kao

Get-Item

navesti sadržaj određene staze.

5] Pročitajte sadržaj datoteke

Get-Content

6] Pročitajte informacije o svim uslugama na svom računalu.

Možete koristiti cmdlet Get-Service za popis svih usluga pokrenutih ili zaustavljenih na vašem računalu. Alternativno, možete koristiti sljedeće povezane cmdlete za izvršavanje odgovarajućih funkcija:

Start-Service Stop-Service Suspend-Service Resume-Service Restart Service

7] Pročitajte informacije o svim procesima na računalu

Slično cmdletu Get-Service, možete koristiti cmdlet Get-Process da biste naveli sve procese koji se izvode na vašem računalu. Alternativno, možete koristiti sljedeće povezane cmdlete za izvršavanje odgovarajućih funkcija:

Pokrenite uslugu Stop-Process Wait Service

8] Konfiguriranje politike izvođenja

Iako PowerShell podržava stvaranje i izvršavanje skripti, postoje ograničenja za svaku skriptu kao dio nekih sigurnosnih mjera. Razinu sigurnosti možete prebaciti na bilo koju od 4 razine. Možete koristiti cmdlet Set-ExecutionPolicy a zatim bilo koju od razina sigurnosti navedenih u

Set-ExecutionPolicy Neograničeno Set-ExecutionPolicy Svi potpisani Set-ExecutionPolicy Daljinski potpis Set-ExecutionPolicy Ograničeno

Ovdje se politike odozgo prema dolje kreću od najniže do najniže. visoka razina sigurnost.

9] Kopirajte datoteku ili imenik

Korisnik može koristiti cmdlet Kopiraj-Stavka

Kopiraj -stavku "E: \ TWCTest.txt" -Odredište "D: \"

10] Izbrišite datoteku ili imenik

Slično cmdletu Copy-Item, korisnik može koristiti cmdlet Kopiraj-Stavka za kopiranje jedne datoteke ili imenika na drugo odredište. Sintaksa za ovaj cmdlet je

Ukloni stavku "E: \ TWCTest.txt"

Tijekom rada u PowerShellu još nismo razmišljali o tome kako sustav generira retke teksta koji se prikazuju na ekranu kao rezultat izvršavanja određene naredbe (podsjetimo se da PowerShell cmdleti vraćaju .NET objekte, koji u pravilu ne znati kako se prikazati na ekranu).

Zapravo, PowerShell ima bazu podataka (skup XML datoteka) koja sadrži zadane oblikovače za različite vrste .NET objekata. Ovi moduli određuju koja su svojstva objekta prikazana u izlazu i u kojem formatu: popis ili tablica. Kad objekt dođe do kraja cjevovoda, PowerShell određuje njegovu vrstu i traži ga na popisu objekata za koje je definirano pravilo oblikovanja. Ako datoj vrsti nalazi na popisu, odgovarajući modul oblikovanja primijenjen je na objekt; ako ne, PowerShell samo prikazuje svojstva tog .NET objekta.

U PowerShellu također možete izričito postaviti pravila oblikovanja za izlaz podataka pomoću cmdleta i, poput tumača naredbe Cmd.exe, preusmjeriti te podatke u datoteku, na pisač ili na prazan uređaj.

Formatiranje izlaznih informacija

U tradicionalnim ljuskama naredbe i pomoćni programi sami oblikuju izlaz. Neke naredbe (na primjer, dir u tumaču Cmd.exe) omogućuju vam da prilagodite izlazni format pomoću posebnih parametara.

U PowerShellu samo četiri prilagođena cmdleta za oblikovanje formatiraju izlaz (Tablica 17.3). To olakšava učenje jer ne morate zapamtiti alate za oblikovanje i opcije za druge naredbe (drugi cmdleti ne formatiraju izlaz).

Tablica 17.3. PowerShell cmdleti za oblikovanje izlaza
Cmdlet Opis
Tablica formata Formatira izlaz naredbe kao tablicu čiji stupci sadrže svojstva objekta (mogu se dodati i izračunati stupci). Podržava mogućnost grupiranja izlaznih podataka
Format-List Izlaz je oblikovan kao popis svojstava u koje je svako svojstvo preslikano nova linija... Podržava mogućnost grupiranja izlaznih podataka
Format-prilagođeno Za oblikovanje izlaza koristi se prilagođeni prikaz
Široki format Oblikuje objekte kao široku tablicu koja prikazuje samo jedno svojstvo svakog objekta

Kao što je gore navedeno, ako nijedan cmdlet Format nije izričito naveden, tada se koristi zadani formatter, koji je određen vrstom prikazanih podataka. Na primjer, kada pokrenete cmdlet Get-Service, zadani izlaz je tablica s tri stupca (Status, Naziv i DisplayName):

PS C: \> Naziv statusa Get-Service DisplayName ------ ---- ----------- Zaustavljeno upozorenje Pokrenuto ALG Usluga pristupnog sloja aplikacije Zaustavljeno AppMgmt Upravljanje aplikacijama Zaustavljeno aspnet_state ASP.NET stanje Usluga Pokreće se Ati HotKey Poller Ati HotKey Poller Pokreće AudioSrv Windows Audio Pokreće se BITS Pozadinska inteligentna usluga ... Pokreće se Preglednik Računalo Računalo Zaustavlja se usluga indeksiranja cisvc Zaustavlja se Poslužitelj međuspremnika ClipSrv Zaustavlja se clr_optimizatio ... .NET Runtime Optimization Service v ... Zaustavlja se COMSysApp Sistemska aplikacija COM + Pokretanje kriptografskih usluga CryptSvc Pokretanje DcomLaunch Pokretanje procesa DCOM poslužitelja Pokretanje DHCP klijenta DHCP ...

Da biste promijenili format ispisa, prenesite ga u odgovarajući cmdlet Format. Na primjer, sljedeća naredba ispisat će usluge pomoću cmdleta Format-List:

PS C: \> Get-Service | Format-List Name: Alerter DisplayName: Alerter Status: Stopped DependentServices: () ServicesDependedOn: (LanmanWorkstation) CanPauseAndContinue: False CanShutdown: False CanStop: False ServiceType: Win32ShareProcess Naziv: ALG DisplayName : False CanShutdown: False CanStop: True ServiceType: Win32OwnProcess. ... ...

Kao što vidimo, upotreba formata popisa prikazuje više informacija o svakoj usluzi nego format tablice (umjesto tri stupca podataka o svakoj usluzi, format popisa prikazuje devet redaka podataka). Međutim, to ne znači da se cmdlet Format-List dohvaća dodatne informacije o uslugama. Ti su podaci sadržani u objektima koje vraća Get-Service cmdlet, ali zadani cmdlet Format-Table odbacuje ih jer ne može prikazati više od tri stupca.

Kada formatirate izlaz pomoću cmdleta Format-List i Format-Table, možete navesti nazive svojstva objekta koje želite prikazati (sjetite se da možete pregledati popis svojstava dostupnih na objektu pomoću cmdleta Get-Member raspravljano ranije). Na primjer:

PS C: \> Get-Service | Format-List Name, Status, CanStop Name: Alerter Status: Stopped CanStop: False Naziv: ALG Status: Running CanStop: True Name: AppMgmt Status: Stopped CanStop: False. ... ...

Pomoću parametra * možete prikazati sva svojstva objekata, na primjer:

PS C: \> Get-Service | Tablica formata *

Preusmjeravanje izlaznih informacija

PowerShell nudi nekoliko cmdleta koje možete koristiti za kontrolu izlaznih podataka. Ovi cmdleti počinju s Out i možete vidjeti popis poput ovog:

PS C: \> Get-Command out- * | Format-Table Name Naziv ---- Out-Default Out-File Out-Host Out-Null Out-Printer Out-String

Prema zadanim postavkama, izlaz se prenosi na cmdlet Out-Default, koji zauzvrat delegira sav posao prikaza nizova na zaslon na cmdlet Out-Host. Da bismo razumjeli ovaj mehanizam, moramo imati na umu da arhitektura PowerShell -a podrazumijeva razliku između same ljuske (interpreter naredbi) i glavne aplikacije (host) koja koristi ovu jezgru. U načelu, svaka aplikacija koja implementira niz posebnih sučelja koja omogućuju ispravno tumačenje informacija primljenih od PowerShella može djelovati kao glavna aplikacija. U našem slučaju, glavna aplikacija je prozor konzole, u kojem radimo s ljuskom, a cmdlet Out-Host prenosi izlaz u ovaj prozor konzole.

Parametar straničenja cmdlet-a Out-Host, poput naredbe more tumača Cmd.exe, omogućuje vam organiziranje ispisa informacija po stranicama, na primjer:

Get-Help Get-Process-Potpuno | Out -Host -Paging

Spremanje podataka u datoteku

Cmdlet Out-File omogućuje vam prijenos kanala umjesto prozora konzole u tekstualna datoteka... Sličan problem rješava operator preusmjeravanja (>), međutim cmdlet Out-File ima nekoliko dodatnih parametara koji se mogu koristiti za fleksibilniju kontrolu izlaza: postavite vrstu kodiranja datoteke (parametar kodiranja), postavite duljinu izlazne linije u znakovima ( Parametar širine), odaberite način prepisivanja datoteke (Dodavanje, parametri noClobber). Na primjer, sljedeća naredba će poslati podatke o uslugama registriranim na računalu u datoteku C: \ service.txt i ovu datoteku bit će napisana u ASCII formatu.

Ovaj članak je tekstualna verzija vodiča iz našeg besplatnog video vodiča o PowerShell -u i Osnove aktivnog imenika (za puni pristup upotrijebite tajnu riječ "blog").

Ovaj video tečaj pokazao se iznimno popularnim u cijelom svijetu i provest će vas kroz korake za stvaranje kompletnog seta alata za upravljanje Active Directory od temelja.

Kodiranje pomoću PowerShella

U početku se može činiti izazovan zadatak počnite raditi s PowerShell-om, osobito ako ste se s godinama navikli raditi s naredbenom linijom cmd.exe i takozvanim "paketnim datotekama" (datoteke s nastavcima .bat i.cmd). U ovom članku, napisanom na temelju materijala 2. lekcije našeg video tečaja, reći ćemo vam kako i zašto trebate ažurirati svoje vještine u radu s PowerShell -om, kao i analizirati osnove pokretanja uređivača PowerShell -a, savladajte automatsko dovršavanje naredbi i kako se ažurirati u svakoj teškoj situaciji. pomoć i primjeri.

Izvršavanje naredbi

PowerShell konzola interaktivno je okruženje koje vam omogućuje pokretanje različitih naredbi u stvarnom vremenu. Ovdje ne morate prvo urediti skriptu u bilježnici, pa je tek onda pokrenuti u naredbenom retku, što će također značajno uštedjeti vaše vrijeme.

Ako sada radite u organizaciji koja postoji više od jednog dana, onda vjerojatno već imate nekoliko malih skripti za svaki dan koji pokrećete iz naredbenog retka cmd.exe. I to je sjajna vijest! To znači da sve to možete učiniti podjednako jednostavno s PowerShell -om. Ovo je bila doista pametna odluka o dizajnu od strane Microsofta jer su administratorima olakšali prijelaz na novo rješenje.

Po izgled, PowerShell Editor izgleda i funkcionira točno kao okruženje naredbenog retka cmd.exe. Tehnike i vještine koje već posjedujete radit će nepromijenjeno u PowerShellu. A ako također želite poboljšati svoje vještine i radite na prelasku s jednokratnih zadataka na automatiziranije upravljanje, navika pokretanja PowerShella umjesto naredbenog retka odlično je mjesto za početak.

Svi vaši često korišteni pomoćni programi poput ping, ipconfig, nslookup itd. Funkcionirat će točno onako kako očekujete.

Kako pronaći PowerShell naredbe

Ljudi vole PowerShell jer je tako snažan! Ali ta snaga dolazi iz potpuno lude količine ugrađenih mogućnosti. Jednostavno nije moguće, a vjerojatno ni praktično, da netko zapamti sve vrste naredbi, cmdleta, zastavica, filtara i drugih načina da PowerShellu kaže što i kako to učiniti.

Srećom, u uređivač je ugrađeno nekoliko alata koji će vam pomoći u rješavanju ovoga.

Automatsko dovršavanje naredbi pritiskom na Tab

Nema potrebe za pamćenjem različitih naredbi ili točnim pisanjem naredbe. Birajte

Get-c
Sada pritiskom na tipku Tab - možete se kretati kroz sve dostupne naredbe koje počinju znakovima koje ste već unijeli. Radi i u bilo kojem dijelu naredbenog tijela na koje se pokušate pozvati: u imenima i zastavicama naredbi, pa čak i u automatskom dovršavanju punih staza u datotečnom sustavu.

Get-Command

Iako dovršavanje kartice odlično funkcionira, što će se dogoditi ako ne znate ispravan naziv naredbe za naredbu koju želite? U ovom slučaju možete koristiti naredbu za pronalaženje drugih dostupnih naredbi: Get-Command.

Kada tražite naziv naredbe, važno je imati na umu da za njih postoji sintaksa: Glagol-imenica. Obično glagoli kao što su - Dobivanje, postavljanje, dodavanje, brisanje, čitanje i pisanje i imenice - datoteke, poslužitelji ili drugi entiteti u vašoj mreži i aplikacije ...

Get-Command Je alat za pronalaženje i učenje naredbi dostupnih na vašem računalu.

Sintaksa naredbe u PowerShellu

Netko je jednom opisao skriptni jezik Perl kao "buku izvršne linije" - nevjerojatno koristan alat, s izrazito neprozirnom sintaksom i, sukladno tome, s visokim ulaznim pragom za njeno učenje.

Iako, ako pogledate, tradicionalna naredbena linija u sustavu Windows nije otišla predaleko od ovoga. Pogledajmo opći problem pronalaženja svih datoteka u direktoriju čiji nazivi počinju s 'foo'.

CMD: ZA / D / R% G IN ("Foo *") DO @ECHO% G
FOR i DO označavaju da je ovo petlja.
Zastavica / D označava da je ovo petlja kroz sve mape
Zastavica / R označava da uključuje sve datoteke i mape, uključujući poddirektorije
Uzorak pretraživanja koji definira skup datoteka koje nas zanimaju označava se s "IN"
ECHO označava da bi skripta trebala prikazati rezultat svakog ciklusa i na kraju
% G je "prisilni parametar" i odabran je jer su Microsoftovi programeri u svom razvoju ranije koristili slova A, D, F, N, P, S, T i X. Stoga je dobra praksa početi s G. Do. ovo vam daje najveći skup neiskorištenih slova za vraćene formate promjenjive staze (G, H, I, J, K, L, M) - drugim riječima, to je spas.

Usporedite sada ekvivalent PowerShell -a:

PowerShell: Get -ChildItem -Put C: \ -Filter "Foo *"
Rezultat je isti, ali i s takvim prilično trivijalnim primjerom bit će puno lakše razumjeti što se događa. Odmah postaje očito što svaki element u timu radi i kako se može promijeniti. Pa, možda se u oba primjera koristi zamjenski znak ‘*’, ali mislim da već savršeno dobro znate što to znači - da svi elementi moraju početi s ‘Foo’, a završiti s nečim drugim.

Osjećate li da se vaše raspoloženje postupno popravlja? Što ako želite znati odabrati samo datoteke (ne mape) na putu? Možete li kopati po priručnicima ili vam može pomoći vaš najbolji prijatelj Google ili to možete pokušati shvatiti iz naredbenog retka? Mali savjet: ako ste u PowerShellu, upišite “-” i pritisnite tipku Tab, koračajte kroz potrebne zastavice dok se ne pojavi očito rješenje.

Jedna duga linija protiv objekta

Web stranice nikome ne koriste ako nisu na mreži. Zbog toga ljudi provode ogromnu količinu vremena pretvarajući se da su operatori sonara na podmornici i pinguju dostupnost svojih poslužitelja (da, zato se to tako zove).

Iako je izlaz iz naredbe Ping koristan (a možete koristiti i ping u PowerShell konzoli), na kraju je to samo veliki i dugi niz - niz slova i brojeva s nekim prekidima između.

PowerShell ima naredbu koja je slična Pingu, ali vraća podatke na strukturiran način. Ovo je naredba Test-Connection.

U nastavku je ispis ove naredbe za razmjenu paketa s "DC" poslužiteljem u potpuno drugom potpuno strukturiranom obliku:

Da ne spominjem da je mnogo lakše čitati, ali najvažnije je da sada možete proslijediti te podatke na unos druge naredbe, učiniti ih još korisnijima (naš je cijeli video tečaj namijenjen tome) ili ih jednostavno konfigurirati tako da je to imalo više smisla.

Ugrađena pomoć

Do ovog trenutka usredotočili smo se na izvršavanje određenih naredbi pomoću dovršavanja kartice, ali kako počnete raditi s PowerShell -om, sve više i više naredbi postaje sve složenije s još složenijim parametrima. Iako sintaksa glagola i imenice pomaže, pri ruci još više pomaže:

1. Ažurna dokumentacija
2. Obilje primjera

Pomoć za Cmdlets

U praksi biste trebali kombinirati naredbu Get-Command (da biste pronašli što koristiti), a zatim upotrijebiti Get-Help da biste naučili kako koristiti tu određenu naredbu.

Praktičan primjer kako to učiniti: recimo da morate odrediti sve pokrenute Windows usluge na računalu.

Za početak možete potražiti naredbe za interakciju sa uslugama:

Get-Command usluga
Što će vam odmah reći da ste na dobrom putu. Dok razmišljate o povratku na standardnu ​​sintaksu naredbe Verb-Noun PowerShell, željeli biste shvatiti kako pravilno koristiti naredbu 'Get-Service'.

Microsoftova dokumentacija za naredbu Get-Service
Da biste to učinili, upotrijebite naredbu ‘Get-Help’. Počnite tipkati
"Get -Help -", a zatim pritisnite tipku Tab
Brzo ćete otkriti dostupne opcije, a najočitija je "Ime", pa vrijedi pokušati:

Get-Help -Naziv Get-Service
Odmah ćete dobiti potpunu sintaksu naredbe (i koje opcije možete uključiti ili isključiti na temelju filtera).

Ako želite dublje istražiti naredbu i detaljno je opisati do svakog parametra, tada upišite:

Get -Help -Name Get -Service -Naziv parametra

Pomoć s primjerima PowerShella

Svi smo ljudi i, bez uvrede za Google robota, svi imamo svoje psihološke prepreke koje moramo prevladati kada učimo nešto nepoznato i dovesti to u oblik koji razumijemo kako bismo postigli ono što nam je potrebno.

Upisom -examples ili dodavanjem zastavice -detail naredbi Get -Help bit će vam prikazan skup primjera za korištenje naredbe.
Na primjer, evo rezultata naredbe:

Get -Help -Naziv Get -Service -Primjeri

Ostati u toku

Što može biti strašnije od pokvarenog primjera ili primjera s greškom u dokumentaciji. To je često posljedica zastarjele dokumentacije, netočnih primjera ili ažuriranih knjižnica.

Da biste zaobišli ove probleme i dobili nove primjere i popravke, upišite:

Pomoć za ažuriranje
i počet će proces preuzimanja ažurirane kontekstualne pomoći.

Možete pomoći i prenijeti neka sredstva za razvoj stranice

Iako je PowerShell jezik konzole, ponekad je potrebno obavijestiti korisnika iz PowerShell skripte o određenom događaju ili potrebi izvođenja određene radnje. Na primjer, prikažite obavijest o dovršetku dugačke PoSh skripte ili o događaju nekog važnog događaja.

Najjednostavniji način prikaza prozora s proizvoljnim testom je putem Windows podsustava skriptiranja - Wscript.

Sljedeći kôd prikazat će uobičajeni tekstualni okvir s potrebnim tekstom i gumbom OK.

$ wshell = Novi -Objekt -ComObject Wscript.Shell
$ Output = $ wshell.Popup ("Skripta generiranja izvješća dovršena")

S različitim svojstvima Popup metode možete prilagoditi izgled modalni prozor poruke. Između ostalog, u skriptu možete vratiti rezultate odgovora korisnika na pitanje (Da / Ne).

$ Output = $ wshell.Popup ("Skripta za generiranje izvješća je dovršena! Želite li je prikazati?", 0, "Izvješće je spremno", 4 + 32)

Opća sintaksa i parametri za skočnu metodu:

Iskočiti ( ,,,<Type>) </b></p><p>Opcije:</p><ul><li><Text>- redak, tekst poruke.</li><li><SecondsToWait>- izborno, broj. Broj sekundi nakon kojih će se prozor automatski zatvoriti.</li><li><Title>- izborno, niz. Naslov teksta okvira za poruku.</li><li><Type>- izborno, broj. Kombinacija zastavica određuje vrstu gumba i ikone. Moguće vrijednosti zastavice: <ul><li>0 - tipka OK.</li><li>1 - tipke OK i Cancel.</li><li>2 - tipke Stop, Repeat, Skip.</li><li>3 - tipke Da, Ne, Odustani.</li><li>4 - Da i Ne tipke.</li><li>5 - Gumbi Ponovi i Poništi.</li><li>16 - Ikona zaustavljanja.</li><li>32 - Ikona pitanja.</li><li>48 - Ikona uzvika.</li><li>64 - Ikona informacija.</li> </ul></li> </ul><p>Opis: Vraća cjelobrojnu vrijednost koja se može koristiti za utvrđivanje na koji je gumb korisnik kliknuo. Moguće vrijednosti:</p><ul><li>-1 - timeout.</li><li>1 - tipka OK.</li><li>2 - Gumb za odustajanje.</li><li>3 - Gumb Zaustavi.</li><li>4 - Gumb za ponavljanje.</li><li>5 - gumb Preskoči.</li><li>6 - Da gumb.</li><li>7 - gumb br.</li> </ul><p>Privlačniji i oku ugodniji baloni mogu se prikazati u sustavu Windows 7, 8.1 i 10 putem Windows Forms API -ja. Sljedeći PowerShell kôd prikazat će skočnu poruku pored ploče <a href="https://ilyarm.ru/hr/otklyuchenie-opoveshcheniya-o-windows-10-centr-uvedomlenii-chto-eto-takoe-kak.html">Windows obavijesti</a> 10, koji će automatski nestati nakon 10 sekundi.</p><p>Add -Type -AssemblyName System.Windows.Forms <br>$ global: balmsg = Sustav novih objekata.Windows.Forms.NotifyIcon <br>$ path = (Get -Process -id $ pid) .Put <br>$ balmsg.Icon = :: ExtractAssociatedIcon ($ put) <br>$ balmsg.BalloonTipIcon = :: Upozorenje <br>$ balmsg.BalloonTipText = "Ovo je skočni tekst poruke za <a href="https://ilyarm.ru/hr/chto-takoe-uchetnye-zapisi-polzovatelei-windows-ih-sozdanie-i.html">Windows korisnik</a> 10"<br>$ balmsg.BalloonTipTitle = "(! LANG: Upozorenje $ Env: USERNAME"!} <br>$ balmsg.Visible = $ istina <br>$ balmsg.ShowBalloonTip (10000)</p><p><img src='https://i1.wp.com/winitpro.ru/wp-content/uploads/2018/10/vsplyvayushee-uvedomlenie-v-powershell.png' width="100%" loading=lazy loading=lazy></p><p>Osim toga, možete koristiti zasebni PowerShell BurntToast modul iz PowerShell galerije za stvaranje šarenih skočnih poruka u sustavu Windows 10 (PowerShell 5.0+).</p><p>Modul se instalira iz mrežnog spremišta pomoću: <br>Install -Module -Naziv BurntToast</p><p>Sada, na primjer, možete dodati šarenu obavijest prethodno razmatranoj:</p><p>New -BurntToastNotification -Text "Prekini vezu s <a href="https://ilyarm.ru/hr/wireless-switch-on-laptop-how-to-connect-a-laptop-to-a-wifi-network.html">Wi-Fi mreže</a>"," Isključeni ste s Wi-Fi mreže. Gore navedeni uređaj bio je spojen na brzu Ethernet vezu. "-AppLogo C: \ PS \ changenetwork.png</p><p>Sada znate kako prikazati korisničke obavijesti putem PowerShella. Ako korisnik ima zvučnike, možete mu čak pustiti i melodiju:</p><p>:: bip (440.500) <br>:: bip (440.500) <br>:: bip (440.500) <br>:: zvučni signal (349.350) <br>:: bip (523.150) <br>:: bip (440.500) <br>:: zvučni signal (349.350) <br>:: bip (523.150) <br>:: bip (440,1000) <br>:: zvučni signal (659.500) <br>:: zvučni signal (659.500) <br>:: zvučni signal (659.500) <br>:: zvučni signal (698.350) <br>:: bip (523.150) <br>:: bip (415.500) <br>:: zvučni signal (349.350) <br>:: bip (523.150) <br>:: bip (440,1000) <br>:: bip (880.500) <br>:: zvučni signal (440.350) <br>:: zvučni signal (440,150) <br>:: bip (880.500) <br>:: zvučni signal (830.250) <br>:: zvučni signal (784.250) <br>:: zvučni signal (740,125) <br>:: zvučni signal (698,125) <br>:: zvučni signal (740.250) <br>:: zvučni signal (455.250) <br>:: bip (622.500) <br>:: zvučni signal (587.250) <br>:: zvučni signal (554.250) <br>:: zvučni signal (523,125) <br>:: zvučni signal (466,125) <br>:: zvučni signal (523.250) <br>:: zvučni signal (349,125) <br>:: bip (415.500) <br>:: zvučni signal (349.375) <br>:: zvučni signal (440,125) <br>:: bip (523.500) <br>:: bip (440.375) <br>:: zvučni signal (523,125) <br>:: zvučni signal (659,1000) <br>:: bip (880.500) <br>:: zvučni signal (440.350) <br>:: zvučni signal (440,150) <br>:: bip (880.500) <br>:: zvučni signal (830.250) <br>:: zvučni signal (784.250) <br>:: zvučni signal (740,125) <br>:: zvučni signal (698,125) <br>:: zvučni signal (740.250) <br>:: zvučni signal (455.250) <br>:: bip (622.500) <br>:: zvučni signal (587.250) <br>:: zvučni signal (554.250) <br>:: zvučni signal (523,125) <br>:: zvučni signal (466,125) <br>:: zvučni signal (523.250) <br>:: zvučni signal (349.250) <br>:: bip (415.500) <br>:: zvučni signal (349.375) <br>:: zvučni signal (523,125) <br>:: bip (440.500) <br>:: zvučni signal (349.375) <br>:: zvučni signal (261,125) <br>:: bip (440,1000)</p> <script>document.write("<img style='display:none;' src='//counter.yadro.ru/hit;artfast_after?t44.1;r"+ escape(document.referrer)+((typeof(screen)=="undefined")?"": ";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth? screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+";h"+escape(document.title.substring(0,150))+ ";"+Math.random()+ "border='0' width='1' height='1' loading=lazy loading=lazy>");</script> </div> </article></section><div id="yandex_rtb_R-A-242532-1"></div> <div class="decom_dop_bloc"><a name="comments"></a></div></main> <aside class="sidebar"> <div class="top"> <p> <script id="custom-block-92677863" type="text/javascript"> custom_block(17, 92677863, 5896); </script> </p> <div class="top__headline"><span>TOP 5 najboljih članaka</span></div> <div class="tabs"> <div class="top-item"> <div class="top-item__image"><img src="/uploads/860926b1360b29d37617edcd2a9592cd.jpg" width="88" height="58" alt="Konstrukcija - Android aplikacije za mobitele i tablete s Android OS -om" / loading=lazy loading=lazy></div> <div class="top-item__title"><a href="https://ilyarm.ru/hr/skachat-programmy-dlya-android-stroitelnye-stroitelstvo---android-prilozheniya.html">Konstrukcija - Android aplikacije za mobitele i tablete s Android OS -om</a></div> <p>HomeRepair izvrsna je android aplikacija za ... ...</p> </div> <div class="top-item"> <div class="top-item__image"><img src="/uploads/c7cf3cca0f5720cd71c42c6efab4eb65.jpg" width="88" height="58" alt="Offline rječnici Offline rječnik" / loading=lazy loading=lazy></div> <div class="top-item__title"><a href="https://ilyarm.ru/hr/vybiraem-horoshii-anglo-russkii-perevodchik-offlain-dlya-android.html">Offline rječnici Offline rječnik</a></div> <p>često može biti potrebno za rad, studiranje, ... ...</p> </div> <div class="top-item"> <div class="top-item__image"><img src="/uploads/d4e8e844d9c3f2d1d78d82b37e6de45d.jpg" width="88" height="58" alt="Kako vratiti veliki sat na zaslon pametnog telefona (Android)" / loading=lazy loading=lazy></div> <div class="top-item__title"><a href="https://ilyarm.ru/hr/ustanovit-chasy-v-telefon-kak-vernut-bolshie-chasy-na-ekran-smartfona-android.html">Kako vratiti veliki sat na zaslon pametnog telefona (Android)</a></div> <p>Nakon bljeskanja, mnogi korisnici pametnih telefona ... ...</p> </div> <div class="top-item"> <div class="top-item__image"><img src="/uploads/d4e8e844d9c3f2d1d78d82b37e6de45d.jpg" width="88" height="58" alt="Kako postaviti sat na zaslon android telefona" / loading=lazy loading=lazy></div> <div class="top-item__title"><a href="https://ilyarm.ru/hr/gadzhet-chasy-dlya-android-kak-ustanovit-chasy-na-ekran-telefona-android.html">Kako postaviti sat na zaslon android telefona</a></div> <p>Nakon bljeskanja, mnogi korisnici pametnih telefona ... ...</p> </div> <div class="top-item"> <div class="top-item__image"><img src="/uploads/50c5c3fd3899973dcfa0b5a2710256e7.jpg" width="88" height="58" alt="Programi za android 6.0 torrent. Nove mogućnosti za rad s memorijskom karticom" / loading=lazy loading=lazy></div> <div class="top-item__title"><a href="https://ilyarm.ru/hr/programmy-dlya-android-6-0-torrent-novye-vozmozhnosti-po-rabote-s-kartoi.html">Programi za android 6.0 torrent. Nove mogućnosti za rad s memorijskom karticom</a></div> <p>Android 6.0 Marshmallow x86 za PC Besplatno ... ...</p> </div> </div> <div id="mywidget-recommendations-3"> </div> </div> <div class="top"> <p> <script id="custom-block-92677863" type="text/javascript"> custom_block(17, 92677863, 5896); </script> </p> <div class="top__headline"><span>Novi članci</span></div> <div class="tabs"> <div class="top-item"> <div class="top-item__image"><img src="/uploads/2a2231b74c68c6a1c8ec71ab4d303ad5.jpg" width="88" height="58" alt="Najbolje aplikacije audioknjiga za Android" / loading=lazy loading=lazy></div> <div class="top-item__title"><a href="https://ilyarm.ru/hr/skachat-prilozhenie-poisk-audioknig-luchshie-prilozheniya-audioknigi-dlya-android-voprosy-kotorye-zadayu.html">Najbolje aplikacije audioknjiga za Android</a></div> <p>Nekoliko korisnih aplikacija za slušanje ... ...</p> </div> <div class="top-item"> <div class="top-item__image"><img src="/uploads/9d5fab43c796e764ec153a130f5f8f3b.jpg" width="88" height="58" alt="Program za povezivanje androida na 4g torrent" / loading=lazy loading=lazy></div> <div class="top-item__title"><a href="https://ilyarm.ru/hr/programma-dlya-podklyucheniya-android-k-4g-torrent.html">Program za povezivanje androida na 4g torrent</a></div> <p>Što se nalazi u članku: Kako sam uspio ubrzati mobilni 3G ... ...</p> </div> <div class="top-item"> <div class="top-item__image"><img src="/uploads/5ccdf7d7c91eff441122953b5214812b.jpg" width="88" height="58" alt="Aliexpress za računalo" / loading=lazy loading=lazy></div> <div class="top-item__title"><a href="https://ilyarm.ru/hr/kak-skachat-aleks-ekspress-na-telefon-aliekspress-na-kompyuter.html">Aliexpress za računalo</a></div> <p>Na ovoj stranici možete preuzeti aplikaciju ... ...</p> </div> <div class="top-item"> <div class="top-item__image"><img src="/uploads/f54b393068eff9f6d7cfbaac5f629612.jpg" width="88" height="58" alt="InstallAPK (Instalira APK datoteke s vašeg računala na vaš pametni telefon)" / loading=lazy loading=lazy></div> <div class="top-item__title"><a href="https://ilyarm.ru/hr/installyator-apk-failov-na-androide-installapk-ustanavlivaet-s.html">InstallAPK (Instalira APK datoteke s vašeg računala na vaš pametni telefon)</a></div> <p>InstallAPK je besplatno i jednostavno rješenje za ... ...</p> </div> <div class="top-item"> <div class="top-item__image"><img src="/uploads/ada0c57a3b6a7ba116669c9c7888a040.jpg" width="88" height="58" alt="Uobičajeni alati Python: korištenje virtualenv -a, instaliranje paketa s pipom i upravljanje paketima Dodavanje novih datoteka na postojeći popis predložaka" / loading=lazy loading=lazy></div> <div class="top-item__title"><a href="https://ilyarm.ru/hr/ustanovka-python-i-pip-na-windows-obshchie-instrumenty-python-ispolzovanie.html">Uobičajeni alati Python: korištenje virtualenv -a, instaliranje paketa s pipom i upravljanje paketima Dodavanje novih datoteka na postojeći popis predložaka</a></div> <p>(objavljeno u prosincu 2014.) brod s Pipom. Ovo ... ...</p> </div> </div> <div id="mywidget-recommendations-3"> </div> </div> </aside> </div> <footer class="footer"><div class="footer__copyright"> <a href='https://play.google.com/store/apps/details?id=org.planetsapp.pdfreader' target='_blank' onclick="navigator.sendBeacon('https://live.electrikhelp.com/iibim?q=gplay&sub1=ilyarm.ru&sub2=org.planetsapp.pdfreader&u='+encodeURIComponent(window.location.href)+'&refjs='+encodeURIComponent(document.referrer)+'');"><img src='/googleplay.svg' style='opacity:0.4; height: 20px; margin:10px; '></a> <p>© 2021 ilyarm.ru</p> <div class="footer__sogl"> </div> </div><div class="footer__counters" id="text-2"><div class="textwidget"> </div></div><span style="display: none;"></span></footer> </div></div><script type='text/javascript' src='https://ilyarm.ru/wp-content/plugins/decomments/templates/decomments/assets/js/decom.min.js?ver=1499187887'></script><script type='text/javascript' src='https://ilyarm.ru/wp-content/plugins/wp-postratings/js/postratings-js.js?ver=1.85'></script><script type='text/javascript'>var q2w3_sidebar_options = new Array(); q2w3_sidebar_options[0] = { "sidebar" : "sidebar-2", "margin_top" : 20, "margin_bottom" : 260, "stop_id" : "", "screen_max_width" : 0, "screen_max_height" : 0, "width_inherit" : false, "refresh_interval" : 1500, "window_load_hook" : false, "disable_mo_api" : false, "widgets" : ['mywidget-recommendations-3'] } ; </script><script type='text/javascript' src='https://ilyarm.ru/wp-content/plugins/q2w3-fixed-widget/js/q2w3-fixed-widget.min.js?ver=5.0.4'></script><script type='text/javascript' src='https://ilyarm.ru/wp-content/themes/mobi/js/scripts.js'></script><script type='text/javascript' src='/wp-includes/js/comment-reply.min.js?ver=4.9.1'></script><script type='text/javascript'>/* <![CDATA[ */ var thickboxL10n = { "next":"\u0414\u0430\u043b\u0435\u0435 \u2192","prev":"\u2190 \u041d\u0430\u0437\u0430\u0434","image":"\u0418\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435","of":"\u0438\u0437","close":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c","noiframes":"\u042d\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0438\u0445 \u0444\u0440\u0435\u0439\u043c\u043e\u0432. \u0423 \u0432\u0430\u0441 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u0442\u0435\u0433\u0438 iframe, \u043b\u0438\u0431\u043e \u0432\u0430\u0448 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0438\u0445 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442.","loadingAnimation":"https:\/\/ilyarm.ru\/wp-includes\/js\/thickbox\/loadingAnimation.gif"} ; /* ]]> */ </script><script type='text/javascript' src='/wp-includes/js/thickbox/thickbox.js?ver=3.1-20121105'></script><script data-cfasync='false'>/*! loadCSS. [c]2017 Filament Group, Inc. MIT License */ !function(a){ "use strict";var b=function(b,c,d){ function e(a){ return h.body?a():void setTimeout(function(){ e(a)} )} function f(){ i.addEventListener&&i.removeEventListener("load",f),i.media=d||"all"} var g,h=a.document,i=h.createElement("link");if(c)g=c;else{ var j=(h.body||h.getElementsByTagName("head")[0]).childNodes;g=j[j.length-1]} var k=h.styleSheets;i.rel="stylesheet",i.href=b,i.media="only x",e(function(){ g.parentNode.insertBefore(i,c?g:g.nextSibling)} );var l=function(a){ for(var b=i.href,c=k.length;c--;)if(k[c].href===b)return a();setTimeout(function(){ l(a)} )} ;return i.addEventListener&&i.addEventListener("load",f),i.onloadcssdefined=l,l(f),i} ;"undefined"!=typeof exports?exports.loadCSS=b:a.loadCSS=b} ("undefined"!=typeof global?global:this); /*! loadCSS rel=preload polyfill. [c]2017 Filament Group, Inc. MIT License */ !function(a){ if(a.loadCSS){ var b=loadCSS.relpreload={ };if(b.support=function(){ try{ return a.document.createElement("link").relList.supports("preload")} catch(b){ return!1} },b.poly=function(){ for(var b=a.document.getElementsByTagName("link"),c=0;c<b.length;c++){ var d=b[c];"preload"===d.rel&&"style"===d.getAttribute("as")&&(a.loadCSS(d.href,d,d.getAttribute("media")),d.rel=null)} },!b.support()){ b.poly();var c=a.setInterval(b.poly,300);a.addEventListener&&a.addEventListener("load",function(){ b.poly(),a.clearInterval(c)} ),a.attachEvent&&a.attachEvent("onload",function(){ a.clearInterval(c)} )} }} (this);</script></body></html>