27Jul
Ko se premikamo od preprosto zaganjanja ukazov in prevajamo v celoti pisane skripte, boste potrebovali začasno mesto za shranjevanje podatkov. Tukaj spremenijo.
Preberite si prejšnje članke v seriji:
- Več o tem, kako avtomatizirati Windows z PowerShellom
- Učenje za uporabo Cmdlets v PowerShellu
- Učenje Kako uporabljati predmete v PowerShellu
- Formiranje, filtriranje in primerjanje učenjaPowerShell
- Naučite se uporabljati remoting v PowerShell-u
- Uporaba PowerShell-a za pridobivanje informacij o računalniku
- Delo z zbirkami v PowerShell-u
In ostanite nastavljeni za preostanek serije ves teden.
Spremenljivke
Večina programskih jezikov omogoča uporabo spremenljivk, ki so preprosto vsebniki, ki imajo vrednosti. V PowerShell-u imamo tudi spremenljivke, ki so zelo enostavne za uporabo. Tukaj je, kako ustvariti spremenljivko, imenovano "FirstName", in ji dati vrednost "Taylor".
$ FirstName = "Taylor"
Prva stvar, za katero se zdi, da se večina ljudi vpraša, je, zakaj smo postavili znak za dolar pred spremenljivko, kar je pravzaprav zelo dobro vprašanje. Dejansko je dolar znak le malo namig za lupino, da želimo dostopati do vsebine spremenljivke( mislite, kaj je v vsebniku), in ne samega vsebnika. V PowerShell-u imena spremenljivk ne vključujejo znaka dolarja, kar pomeni, da je v zgornjem primeru ime spremenljivke dejansko "FirstName".
V PowerShell-u lahko vidite vse spremenljivke, ki ste jih ustvarili v spremenljivi PSDrive.
gci spremenljivka:
To pomeni, da lahko kadar koli izbrišete spremenljivko iz lupine:
Spremenljivka Odstrani element: \ FirstName
Spremenljivke ne smejo vsebovati niti enega predmeta;lahko preprosto shranite več predmetov v spremenljivko. Na primer, če želite v spremenljivki shraniti seznam procesov v teku, ga lahko samo dodelite izhodnemu procesu Get-Process.
$ Proc = Get-Process
Za razumevanje tega je treba zapomniti, da se desna stran znaka enakosti vedno najprej ovrednoti. To pomeni, da lahko na desni strani imate celoten plin, če želite.
$ CPUHogs = Get-Process |Razvrsti CPU -Devrazen |izberite -Prvi 3
Spremenljivka CPUHogs bo zdaj vsebovala tri zagonske procese, ki uporabljajo največ CPU.
Ko imate spremenljivko, ki vsebuje zbirko predmetov, je nekaj stvari, da se zavedate. Klicanje metode na spremenljivko bo na primer povzročilo, da se bo klical na vsak predmet v zbirki.
$ CPUHogs. Kill()
Ki bi ubil vse tri postopke v zbirki.Če želite v spremenljivki dostopati do enega predmeta, ga morate obravnavati kot matriko.
$ CPUHogs [0]
S tem boste dobili prvi predmet v zbirki.
Ne ujite!
Spremenljivke v PowerShell-u so privzeto šibko natipkane, kar pomeni, da lahko vsebujejo kakršne koli podatke, zato se zdi, da se ves čas ujamejo novi člani PowerShell-a!
$ a = 10
$ b = '20'
Imamo dve spremenljivki, ena vsebuje niz in drugo celo število. Kaj se zgodi, če jih dodate? Dejansko je odvisno od tega, v kakšnem vrstnem redu jih dodate.
$ a + $ b = 30
Čeprav
$ b + $ a = 2010
V prvem primeru je prvi operand celo število, $ a, zato PowerShell misli, da jeposkušate opraviti matematiko in zato poskuša pretvoriti vse druge operande v celo število. Vendar pa je v drugem primeru prvi operand niz, tako da PowerShell samo pretvori ostale operande v niz in jih združuje. Naprednejši skriptorji to preprečujejo, tako da spremenijo spremenljivko v vrsto, ki jo pričakujejo.
[int] $ Number = 5
[int] $ Number = '5'
Zgoraj bo tako prišlo do spremenljivke Number, ki vsebuje celostni objekt z vrednostjo 5.
Vhod in izhod
Ker je namen PowerShell avtomatizirati stvari, se boste želeli izogniti pozivom uporabnikom za informacije, kadar koli je to mogoče. S tem je dejal, da so časi, ko se ne morete izogniti, in za tiste čase imamo cmdlet Read-Host. Uporaba je res preprosta:
$ FirstName = Read-Host -Prompt "Vnesi svoje ime"
Karkoli boste vnesli, bo shranjena v spremenljivki.
Izhod za pisanje je enako enostaven s cmdletom Write-Output.
Write-Output "Kako naj Geek Rocks!"
Pridružite se nam jutri, ko bomo povezali vse, kar smo se naučili skupaj!