Powershelli cmdletid, mis parandavad teie Windowsi administraatori oskusi

Powershelli cmdletid, mis parandavad teie Windowsi administraatori oskusi

Powershell on ideaalne viis uuele kodeerijale Windowsiga alustamiseks. Powershell on võrdsetes osades käsurea tööriist ja skriptikeel. See annab teile võimaluse arvuti automatiseerida samade käskude kaudu, mida kasutate selle haldamiseks . Kui teil on kaasaegne Windowsi süsteem, on teil juba Powershell. Enamik selle kasutusvõimalusi on Windowsi kesksed, kuid saate Powershelli installida ka Maci või Linuxi masinasse.





Töö Powershelliga

Powershelli kasutamiseks on kaks võimalust. Seal on käsurea põhiaken, mida kasutatakse käskude käivitamiseks või eelnevalt kirjutatud skriptide käivitamiseks. Siis on ISE, mis ühendab CLI akna põhilise arenduskeskkonnaga. Seda kasutades saate oma skripte kirjutada ja testida.





ISE -l on otsitav käskude loend ja saate selle terminaliakent kasutada ilma faili avamata. Käskude loend võimaldab teil oma käsu koostada ja selle sisestada. Kui teete täpsemat arendustööd, installige Microsofti Visual Studio Code. Kood sisaldab Giti versioonikontrolli ja muude keelte tuge.





Powershell on ainulaadne selle poolest, et see on ehitatud täielikult käskudest, Microsoft nimetab neid Cmdletideks. Need käsud on samad, kui töötate käsurealt või kirjutate keerukaid skripte. Nii et kui kasutate neid käske, võite mõelda, kuidas need esimeste skriptide loomiseks kokku panna.

Põhitõed: Get-Command, Get-Help, Get-Member

Kõik Powershelli käsud on verbi-nimisõna kujul. Tegusõnad on tavaliselt: Hangi, Määra ja Uus .



Get-Command võimaldab teil näha kõiki saadaolevaid käske. Get-Commandi käivitamisel näete, et on palju käske, mis algavad nendega.

Ainult cmdlet -nimede süvenedes hakkate nägema, et neil kõigil on sarnane struktuur. Te kutsute neid nimepidi, nagu ka Get-Commandi puhul. Parameetrite kasutamine muudab saadud teavet. Kui aga kasutasite käsku ainult vaikesuvanditega, siis kuidas saate teada, kuidas täpsemaid parameetreid kasutada?





Kasutades Hankige abi cmdlet koos Get-Commandiga näitab cmdleti kohta lisateavet. Me kasutame cmdlet -käsku järgmise süntaksiga:

Get-Help Get-Command

Seejärel näete parameetrite põhiteavet. Kui soovite näha parameetri üksikasju ja mõningaid kasutusnäiteid, lisage parameeter -Full.





Kui soovite näha ainult näiteid, saate käivitada:

Get-Help Get-Command -Examples

See cmdlet -käsk tagastab ainult näited abifailist. Need näited on üsna kasulikud, kuna need sisaldavad kirjeldusi. See abitekst selgitab, mida cmdlet -käsk ja parameetrid käitamise ajal teevad.

Kui soovite abifaili eraldi aknasse hüpata, saate seda kasutada -ShowWindow . Nii et kui sa jooksed:

Get-Help Get-Command -ShowWindow

Powershell hüppab aknast välja koos täieliku abifailiga. Siin ei pea te parameetrit Full kasutama, kuna aken tõmbab täieliku artikli.

Powershelli abil arenenumana märkate, et kasutate Get-Memberi sagedamini. See on lihtne viis näha, millised väljad on tagastatud andmetest saadaval, samuti muid meetodeid, mida saate käivitada. Sageli on cmdlet -käskudel a -Kinnisvara parameeter, mis võimaldab teil neile helistada.

Failidega töötamine: Get-ChildItem, Remove-Item, Move-Item, Copy-Item

Nüüd, kui teil on aimu cmdlet -käskude toimimisest ja abi hankimisest, teeme muudatusi. Saate mis tahes kausta sisu hankida, kasutades Get-ChildItem käsk. Näiteks saate draivi tähe abil hankida terve draivi failid. Sisenema:

Get-ChildItem E:

Mis on lühike:

Get-ChildItem -Path E:

Selle käsu käivitamisel kuvatakse atribuutide Pikkus, Nimi ja režiim all failide loend, mille viimane kirjutamisaeg on suurus. Režiim on faili või kausta atribuudid. Võimalikud sissekanded on järgmised:

  • Loe ainult
  • Varjatud
  • Süsteem
  • Kataloog
  • Arhiiv
  • Seade
  • Normaalne
  • Ajutine
  • SparseFile
  • ReparsePoint
  • Kokkusurutud
  • Võrguühenduseta
  • NotContentIndexed
  • Krüpteeritud

Kui soovite saada kõigi alamkataloogide sisu teele, soovite kasutada -Taas parameeter. Siis jookse:

Get-ChildItem -Path E: -Recurse

Seejärel ilmuvad teie failid eraldi loenditena iga tee kausta jaoks.

Tagastatud andmete piiramiseks võite kasutada mõnda erinevat parameetrit: -Fail , -Varjatud ja -Loe ainult . Kui soovite faili nimesid välja filtreerida, saate parameetris Path kasutada metamärke. Kõigi kataloogi .doc -failide tagastamiseks sisestage:

Get-ChildItem -Path E:*.doc

Jällegi lisada -kordus kui tahtsid kõike ka alamkaustadelt.

Kui soovite faili kustutada, kasutage järgmist.

Remove-Item -Path E:OldFile.txt

Iga faili kinnitamise vahelejätmiseks lisage parameeter -Kinnitage $ false (Powershellil on loogiliste väärtuste jaoks kaks konstanti: $ true ja $ false). Kirjutuskaitstud või peidetud failide eemaldamise sundimiseks kasutage -Sundida parameeter.

Failide teisaldamine on sama lihtne. Kõigi Flash -draivilt kausta kohaliku draivi teisaldamiseks kasutage järgmist.

Move-Item -Path E:* -Destination C:FlashDriveArchive

Kui soovite ainult faili teisaldada, saate ka -Path -is nimetada ühe faili. Faili kopeerimiseks selle teisaldamise asemel kasutage sama süntaksit Kopeeri-kirje cmdlet.

Protsesside ja teenuste jälgimine ning nendega töötamine

Iga Windowsi kasutaja teab Task Managerit . Siiski on kiirem viis näha praegu käimasolevaid Powershelli protsesse, Hangi protsess . Kui soovite teada, mida kõik selle tabeli kirjed tähendavad, suunake käsk Liituge . Sisestage cmdlet -käsk:

Get-Process | Get-Member

Get-member väljastab Get-Processiga seotud meetodite ja atribuutide loendi. Ülaosas olev teave on see, mis teid huvitab. Näete, et erinevat tüüpi mälul on varjunimed.

Samuti näeme selle väljundi põhjal, et saame Toode vara, et saada protsessidele sõbralikum nimi. Muutame väljundit, nii et sellel oleks meie jaoks parem teave, mida saaksime kasutada:

kuidas kustutada Wordis lehevahe
Get-Process | Select-Object Product, NPM, CPU, Name, ID | Sort-Object CPU -Descending

(Järgmises osas leiate lisateavet objektide valimise ja sortimise kohta.)

Nüüd, kui teil on käsust Get-Process saadud ID, saate selle peatada cmdlet-käsu Stop-Process abil. Nii et kui leiate, et Chrome'i protsess närib kõiki teie ressursse, leidke ID eelmisest käsust. Seejärel jookse:

Stop-Process -ID 45960

Asenda 49560 oma ressurssiga ID -ga.

Failitee abil saate protsessi käivitada Powershelli abil. Chrome'i käivitamiseks käivitage järgmine käsk:

Start-Process -Filepath 'C:Program Files (x86) GoogleChromeApplicationchrome.exe'

(Tühikute tõttu peavad failitee ümber olema jutumärgid.) -Argumendiloend parameeter võimaldab teil rakendusele käsurea valikuid edastada. Chrome'i puhul saate selle sundida inkognito režiimis käivitama, kasutades nuppu -inkognito lipp. Kogu cmdlet -käsk on järgmine:

Start-Process -Filepath 'C:Program Files (x86) GoogleChromeApplicationchrome.exe' -ArgumentList '--incognito'

Enamikku samu asju saate teha teenustega. Get-Service kuvab kõigi teie arvutis töötavate teenuste loendi. Sama saate kasutada ka teenuste käivitamisel ja peatamisel Start-Service ja Stop-Service .

Töö andmetega: Sort-Object, Select-Object, Where-Object

Kui töötate cmdlet -käskude andmetega, ei pruugi see alati soovitud järjekorras olla. Sellistel juhtudel soovite kasutada Sorteeri objekt . Sort-Object saate helistada loodud muutujale, kuid peamiselt kasutatakse seda teise cmdlet-käsu abil. Nagu ülaltoodud näites, suuname ühe objekti väljundi teisele ja sorteerime selle. Loome kolmest juhuslikust numbrist koosneva massiivi ja suuname selle Sort-Object.

Kõik, mis on sulgudes, jookseb kõigepealt. Looge lihtne massiiv järgmiselt:

$(Get-Random), $(Get-Random), $(Get-Random)

Pange tähele kindlasti väärtusi eraldavaid komasid. Nii et juhuslike numbrite sorteerimise nägemiseks toimige järgmiselt.

$(Get-Random), $(Get-Random), $(Get-Random) | Sort-Object

Ccmdlet väljastab numbrid väikseimast suurimani, kui soovite selle ümber pöörata, lisage -Alanduv .

Kui suunate cmdlet-käsud rakendusse Get-Member, on atribuute rohkem kui vaikeväljundit. Valite konkreetsed atribuudid, kasutades Vali objekt .

Täpselt nagu Sort-Object, kasutate ka Select-Objecti toru kaudu cmdlet-käsu kaudu. Näiteks teenuste ja nende oleku kasutamise tabeli loomiseks tehke järgmist.

Get-Service | Select-Object DisplayName, Status

Kuigi kõigi nende andmete väljastamine on tore, mis siis, kui soovite näha ainult konkreetseid andmeid? Get-ChildItemil on sisseehitatud filtreerimine, kuid enamik käske seda ei tee. Sellistel juhtudel kasutate Kus-objekt .

Kui pöördute uuesti teenuste juurde, siis seekord saate ainult jooksvaid teenuseid. Sisestage cmdlet -käsk:

Get-Service | Where-Object Status -eq 'Running'

See -ekv võrdluses on Powershell = . Powershellis võrdlete tähekombinatsioonidega:

  • ekv: võrdne
  • ne: pole võrdne
  • lt: vähem kui
  • gt: suurem kui
  • ge: suurem või võrdne
  • le: väiksem või võrdne
  • meeldib: kasutage nagu metamärkide võrdlemisel

Vormindamise abi: vorming-tabel ja vorming-loend.

Nende erinevate cmdlet -käskude puhul oli suurem osa väljundist tabelivormingus. See kuvab andmed päiste ridades ja veergudes. Nende omadustega üksikute kirjete kuvamiseks ühendage cmdlet -käsk Vorming-loend .

Mõnikord on väljund Powershelli akna jaoks liiga lai. Kui see juhtub, sunnib Powershell selle loendiväljundisse sisestama. Veendumaks, et hoiate seda tabeli vormingus, suunake oma väljund Vorming-tabel .

Käsurealt skriptideni: järgmised sammud

Kui olete mugav, skriptimine on cmdlet -failide sisestamine tekstifaili ja nende salvestamine. Kui olete skriptide proovimise pärast närvis, ärge seda tehke. Microsoftil on iga cmdlet -käsu kohta tohutul hulgal dokumente. See on kaugemale sellest juba pikast abidokumentatsioonist, seega vaadake kindlasti Techneti [enam saadaval].

Kui õpite Powershelli, andke meile kommentaarides teada, mida te kõige rohkem põnevil olete. Kui teil on natuke rohkem kogemusi, tahaksime kuulda täpsematest teemadest, mida soovite kajastada.

Jaga Jaga Piiksuma E -post Kustutage need Windowsi failid ja kaustad kettaruumi vabastamiseks

Kas vajate Windowsi arvutis kettaruumi tühjendamist? Siin on Windowsi failid ja kaustad, mida saab kettaruumi vabastamiseks turvaliselt kustutada.

Loe edasi
Seotud teemad
  • Windows
  • Programmeerimine
  • PowerShell
  • Skriptimine
Autori kohta Michael McConnell(44 artiklit avaldatud)

Michael ei kasutanud Maci, kui nad olid hukule määratud, kuid ta oskab Applescriptis kodeerida. Ta on lõpetanud arvutiteaduse ja inglise keele; ta on juba mõnda aega kirjutanud Macist, iOS -ist ja videomängudest; ja ta on olnud üle kümne aasta päevane IT -ahv, kes on spetsialiseerunud skriptimisele ja virtualiseerimisele.

Veel Michael McConnellilt

Telli meie uudiskiri

Liituge meie uudiskirjaga, et saada tehnilisi näpunäiteid, ülevaateid, tasuta e -raamatuid ja eksklusiivseid pakkumisi!

Tellimiseks klõpsake siin