Korištenje PowerShell -a za kućne korisnike - Vodič za početnike

Admin

Tko ne bi želio biti čarobnjak i izgovoriti nekoliko riječi da bi se dogodile čarobne stvari? Pa, nismo vam u mogućnosti pokazati kako biti čarobnjak, ali možemo vam pokazati kako napraviti malo računalne magije.

Ako imate Windows računalo sa sustavom Windows 7, imate PowerShell. Također, ako imate računalo sa sustavom Windows 7, ažurirajte ga radi sigurnosti.

Sadržaj

Ali ovaj članak nije samo za Windows korisnike. Najnovija verzija programa PowerShell besplatna je i može se instalirati i koristiti na Mac i Linux računalima.

To je važno jer se ono što naučite o PowerShellu sada može koristiti na gotovo svakom računalu. Tko zna? Mogli biste ovu vještinu podići na višu razinu i upustiti se u karijeru u informacijskoj tehnologiji.

Što je PowerShell?

Microsoftov visokotehnološki odgovor jest da je to "... ljuska naredbenog retka dizajnirana posebno za administratore sustava." Zvuči zastrašujuće. Ali nije. Vodite li računa o svom računalu? Da, onda ste administrator sustava u svojoj kući.

Govorite li svom računalu što učiniti s klikovima i pritiscima tipki? Da, stoga zamislite ljusku naredbenog retka kao samo još jedan prozor u koji upisujete stvari kako biste svom računalu rekli što treba učiniti. Možeš ti to.

PowerShell je poput programskog jezika, ali nije tako zagonetan kao većina. Čita se jako poput običnog engleskog jezika, čemu je Microsoft težio kako bi ga mogli pokupiti i programeri.

To je način pisanja nekoliko redaka naredbi, nazvanih skripta, kako bi operacijski sustav Windows učinio nešto što želite da učini. Zatim možete spremiti te retke u datoteku i pokrenuti je klikom ili zakazati njeno povremeno pokretanje.

Što možete učiniti s PowerShell -om?

Vrhunac PowerShell-a je mogućnost automatiziranja zadataka, tako da ne morate gubiti vrijeme na ponavljanje svakodnevnih stvari. Za profesionalnog administratora sustava to bi moglo biti nešto poput stvaranja novih korisnika, generiranja lozinki za njih i slanja e-pošte s detaljima njihovom novom nadzorniku.

Ručno obavljen postupak, s klikovima i tipkanjem, može potrajati od 5 minuta do čak sat ili više. S pravim skriptama administrator sustava možda čak neće morati učiniti bilo koji dio toga.

Ali želite znati što možete učiniti s PowerShell -om kod kuće. Gotovo sve što ne volite raditi iznova i iznova. Koristite ga za oslobađanje prostora na tvrdom disku brisanjem privremenih datoteka i datoteka dnevnika koje vam ne trebaju.

Stavite policijski sat na računalo svog djeteta. Preimenujte ili organizirajte hrpu datoteka. To je ljepota PowerShella. Gotovo sve što možete učiniti na svom računalu, možete stvoriti PowerShell skriptu za automatizaciju i pokretanje klikom ili prema rasporedu.

Kako mogu koristiti PowerShell?

Najlakši način rada s PowerShell -om je u PowerShell integrirano okruženje skriptiranja (ISE). Možete ga pronaći klikom na Start i upisivanjem powershell ise u traku za pretraživanje u sustavu Windows 10. Trebali biste ga vidjeti kao što je prikazano u nastavku.

Po prvi put kad ga koristimo, pokrenuti ćemo ga kao administrator. Da biste to učinili, najprije morate imati administratorska prava na računalu. U vašem Izbornik Start, desnom tipkom miša kliknite PowerShell ISE, zatim kliknite na Pokreni kao administrator.

Možda ćete dobiti a Korisnik. Kontrola pristupa (UAC) skočni prozor upozorenja s pitanjem jeste li sigurni da želite to učiniti. ovaj. Klik Da.

Sada gledate PowerShell IDE. Gornje okno prozora (1) je okno za skriptiranje. Ovdje ćete napisati svoj scenarij. Donji dio prozora (2) je područje konzole. Kad testirate svoju skriptu, vidjet ćete izlaz u ovom oknu.

Ovdje ćete vidjeti i poruke o pogreškama koje će vam pomoći da popravite i poboljšate svoje skripte. Prozor na desnoj strani prozora (3) je dodatak naredbi. Zamislite to kao rječnik svih PowerShell naredbi koje su vam dostupne.

PowerShell je postavljen tako da ne pokreće nijednu drugu skriptu osim njih. već dio sustava Windows. Morat ćete ga promijeniti kako biste mogli pokrenuti svoj. vlastite skripte.

U prozoru za skriptiranje kopirajte i zalijepite sljedeće:

Set -ExecutionPolicy -ExecutionPolicy RemoteSigned

The Set-ExecutionPolicy dio se naziva cmdlet (izgovara se commandlet). Cmudleti su moćne stvari. Zamislite ih kao kratke naredbe koje možete dati sustavu Windows, a Windows će učiniti mnogo složenijih stvari kako bi zadovoljio vašu naredbu.

Analogija bi bila reći vašem djetetu da očisti svoju sobu. Kratko i bitno. Ako vaše dijete dobro poznaje čišćenje soba, otići će pospremiti krevet, staviti svoje rublje u košaru, odložiti police s igračkama i knjigama, a možda čak i usisati pod. Oni razumiju da je cmdlet Clean-YourRoom značio sve to.

Pri vrhu prozora vidjet ćete zelenu strelicu. Kliknite na to da biste pokrenuli naredbu.

The -Politika izvršenja dio govori Set-ExecutionPolicy koju politiku postaviti. To je parametar. Kaže: „Želim da radite u skladu s ovim smjernicama i učinite ovo posebno. Kaže mu da koristi određena pravila RemoteSigned.

The RemoteSigned Pravila navode da PowerShell ne smije izvršavati niti pokretati bilo koju skriptu preuzetu s Interneta, osim ako ju nije potpisao pouzdani izdavač.

Na kružni način, PowerShellu govori da je u redu pokrenuti bilo koju skriptu stvorenu lokalno, jer ih ne mora potpisati udaljeni pouzdani izdavač. Sada će vaša PowerShell skripta moći pokrenuti bilo koju skriptu koju napišete na računalu.

Pogledajmo skriptu za brisanje privremenih datoteka. Nije. snažan ili temeljit kao CCleaner, ali CCleaner dolazi sa svojim vlastitim setom. problema.

Koristite PowerShell za stvaranje prostora na tvrdom disku

Razbit ćemo ovu skriptu, redak po redak, tako da možete vidjeti. kako radi. Na kraju će se skripta potpuno prikazati tako da možete kopirati. i zalijepite ga ako želite.

$ TempFileLocation = "C: \ Korisnici \ korisničko ime \ Appdata \ Lokalno \ Temp \*"

Sve sa znakom dolara ispred je promjenjivog naziva. Zamislite to kao novčanik u koji možete staviti vrijedne stvari. Novčanik nas podsjeća na znak dolara, dragocjenosti zvuče kao promjenjive, pa ćemo se i toga sjetiti. Izrađujemo novčanik ili varijablu s imenom $ TempFileLocation. Znak jednakosti govori PowerShellu što staviti u tu varijablu.

U ovom slučaju stavljamo lokaciju privremenih datoteka sustava Windows - C: \ Korisnici \ korisničko ime \ AppData \ Lokalna \ Temp \*. Činimo to iz dva razloga; to je mjesto s kojeg je uvijek sigurno izbrisati datoteke, a mi ćemo ga koristiti za to da PowerShellu kažemo kamo mora otići za brisanje datoteka.

Tamo gdje piše korisničko ime. mjesto, zamijenite ga svojim korisničkim imenom. To je korisničko ime koje koristite za prijavu. u vaše računalo. Zvjezdica (*) na kraju. to je wild card. Ono što predstavlja je sve u mapi Temp, jer je sve u mapi Temp privremeno. i želimo ga izbrisati.

Dvojni navodnici oko lokacije također su važni. Da. govori PowerShellu da je ono što se nalazi niz. Zamislite niz kao niz. slova i znakova. Da su to obični brojevi, ne bismo koristili. citati.

$ TempFile = Get -ChildItem $ TempFileLocation -Recurse

Pravimo drugu varijablu. Ovaj put ćemo koristiti naredbu da smislimo nešto što treba staviti u $ TempFile promjenjiva.

Get-ChildItem 

Još jedna stvar koju ćete primijetiti kod cmdleta poput Get-ChildItem je da je potpuno čitljiv. Vidite li kako je prva riječ glagol? Cmdleti svi počinju riječima riječi, tako da odmah znate što radi. ChildItem su dvije imenice.

Drugi dio cmdleta uvijek će nam reći na koji će PowerShell primijeniti radnju. ChildItem znači sva djeca roditeljske lokacije. Ovo je kao da kažete da nabavite sve datoteke koje se nalaze u mapi, pri čemu su datoteke podređene, a mapa nadređena.

Od čega cmdlet dobiva podređene stavke? Sve u varijabli $ TempFileLocation. PowerShell će otići na mjesto koje smo ranije stavili u $ TempFileLocation i nabavit će sve podređene stavke koje se tamo nalaze. Zatim će ih staviti u varijablu $ TempFile.

Dakle, što je s -Ponovno dio? To govori Get-ChildItem proći sve na tom mjestu. Nemojte samo otići po datoteke odmah u roditeljsku mapu. Ako u toj mapi postoje mape, nabavite i svu njihovu djecu, njihovu djecu i tako dalje. Sve ćemo ih dobiti.

$ TempFileCount = ($ TempFile) .broj

Da, stvaramo treću varijablu tzv $ TempFileCount, a mi ćemo u tu varijablu staviti broj. Gdje je broj? Dobro, ($ TempFile) .broj dobit će nam taj broj. Vjerojatno ste shvatili da će dio .count odbrojavati sve datoteke koje smo upravo spremili u $ TempFile.

Zašto smo to učinili? Uglavnom zato što je lijepo znati koliko beskorisnih datoteka čistimo s ostatkom skripte kako bismo mogli reći koliko je bila učinkovita.

if ($ TempFileCount -eq 0)

Sada postavljamo uvjetni izraz. Možete vidjeti da vas pita 'ako'. Ako što? Ako je stvar u zagradama istinita ili netočna. Zagrade su važne, inače If ne zna što usporediti. Ovdje se pita je li broj u koji smo pohranili $ TempFileCount jednaka je nuli.

The -ekv je kratica za jednake. To je vrsta operatora usporedbe. To je kao da svojoj djeci kažete: "Ako je vaša soba čista, super, mi ćemo nešto učiniti ..." Ova izjava govori ako je broj koji je pohranjen u $ TempFileCount -jedan na nulu učinite sljedeće.

{Write -Host "Nema datoteka u mapi $ TempFileLocation" -ForegroundColor Green}

To je ono što će se dogoditi ako $ TempFileCount je nula. Kovrčave zagrade su važne. Kažu PowerShellu da radi samo ono što je u njima ako je $ TempFileCount jednak nuli.

On će pisati hostu ili ekranu: "Nema datoteka u mapi C: \ Users \ username \ Appdata \ Local \ Temp \*". Parametar na kraju, -Boja u prednjem planu govori PowerShellu da učini tekst zelenim. To samo olakšava razlikovanje od poruke o pogrešci koja je obično crvena.

Drugo

Znate što još znači. Ovo je dio "Vaša soba bolje biti čista ili inače ..." dio provjere je li vaše dijete čistilo svoju sobu. To će se dogoditi ako $ TempFileCount nije nula.

{$ TempFile | Remove -Item -WhatIf -Confirm: $ false -Recurse -Force -WarningAction SilentlyContinue -ErrorAction SilentlyContinue}

To kaže da idite na trenutnu lokaciju pohranjenu u $ TempFile. Okomita linija nakon nje naziva se cijev. Funkcionira poput cijevi iz stvarnog života jer govori PowerShell-u da usmjeri sadržaj datoteke $ TempFile u cmdlet, kao da je voda dovedena cijevi u perilicu rublja. Zatim cmdlet Ukloni-stavku radi ono što kaže; uklanja sve što se nalazi na tom mjestu.

The -Što ako parametar je vrlo važan u ovoj fazi. On govori PowerShellu da pokrene naredbu, ali samo ga isprobajte, nemojte ništa uklanjati. Samo nam pokažite što bi se dogodilo da doista to učinimo.

To vam omogućuje testiranje naredbi bez promjene bilo čega na vašem računalu. Ostavite -WhatIf tamo dok vam ne bude jasno da će skripta raditi ono što vi želite i ništa drugo. Zatim samo izbrišite to i skripta će odraditi svoj posao.

Parametar -Potvrdite: $ false zaustavlja skriptu da vas pita želite li zaista izbrisati datoteku. Znaš što -Ponovno čini. -Sila znači izbrisati tu stvar bez obzira na sve. -Upozorenje je postavljeno na TihoNastavi.

To sprječava skriptu da vas upozori na ono što brišete. -ErrorAction je postavljeno na TihoNastavi tako da ako dođe do bilo kakve greške u procesu, on će se neprestano pomicati.

Sada smo na posljednjem retku.

Write -Host "Očišćene datoteke $ TempFileCount u mapi $ TempFileLocation" -ForegroundColor Green}

Baš kao Write-Host prvi put, ispisat će sljedeću rečenicu, tako da znamo što se dogodilo. Reći će nam koliko je datoteka izbrisano iz mape koju je upravo obradio i učinit će to zelenom bojom radi lakšeg uočavanja.

Pogledajmo u potpunosti scenarij:

$ TempFileLocation = "C: \ Users \ guymcd \ Appdata \ Local \ Temp \*"
$ TempFile = Get -ChildItem $ TempFileLocation -Recurse
$ TempFileCount = ($ TempFile) .broj
if ($ TempFileCount -eq "0") {{100} {101}
Write -Host "Nema datoteka u mapi $ TempFileLocation" - ForegroundColor Zelena
}
Inače {
$ TempFile | Remove -Item -Confirm: $ false -Recurse -Force -WarningAction SilentlyContinue -ErrorAction TihoContinue
Write -Host "Očišćene datoteke $ TempFileCount u mapi $ TempFileLocation" -ForegroundColor Green
}

Ovo možete kopirati i zalijepiti u svoj PowerShell ISE i spremiti kao nešto poput delete-TemporaryFiles.ps1. Također se možete držati konvencije imenovanja cmdleta sada kada ih razumijete.

Ako vam kôd iz nekog razloga ne radi, možete i vi preuzmite PowerShell skriptu stvorili smo i samo ga pokrenuli. Samo ga prethodno raspakirajte da biste vidjeli datoteku skripte.

Kad god želite pokrenuti ovu skriptu, kliknite je desnom tipkom miša i odaberite Pokrenite s PowerShell -om. PowerShell konzola pojavit će se na sekundu ili dvije, dok vaša skripta učini svoje, a zatim će nestati ako nema pogrešaka.

Gdje mogu saznati više o PowerShell -u?

Čini se da je to puno! Za vašu prvu PowerShell skriptu to je pošteno. Ako ste uspjeli do sada, aplaudirajte sebi. Danas ste puno naučili, ali sada želite naučiti više. To je odlično!

Na Internetu postoji mnogo resursa za učenje više o PowerShellu. Dobro mjesto za početak je naš članak, “Generirajte popis programa za pokretanje putem naredbenog retka ili PowerShell -a”. Zatim provjerite ove druge resurse:

  • Početak rada s Microsoft PowerShell -om - Microsoftova virtualna akademija
  • PowerShell vodič - TutorialsPoint.com

Dobro došli na Help Desk Geek- blog prepun tehničkih savjeta pouzdanih tehničkih stručnjaka. Imamo tisuće članaka i vodiča koji će vam pomoći riješiti bilo koji problem. Naši su članci pročitani više od 150 milijuna puta od pokretanja 2008.

Mrzimo i neželjenu poštu, odjavite se u bilo kojem trenutku.

6 najboljih aplikacija za provjeru temperature procesora u sustavu Windows 11/10
6 najboljih aplikacija za provjeru temperature procesora u sustavu Windows 11/10

Temperatura procesora vašeg računala jedan je od ključnih pokazatelja na koji morate pažljivo pra...

5 najboljih alata za IP skener za Windows, Mac, iOS i Android
5 najboljih alata za IP skener za Windows, Mac, iOS i Android

Je li vaša mreža sigurna? Ima li vaš B&B skrivene kamere? Koji su uređaji spojeni na vašu mre...

8 najboljih upravitelja datoteka za Windows 11/10 u 2022
8 najboljih upravitelja datoteka za Windows 11/10 u 2022

Windows ima dobar upravitelj datoteka, zar ne? Ali, čini se File Explorer u sustavu Windows 11 ni...