- Aplinkos kintamieji pritaiko ir kontroliuoja elgseną PowerShell " ir operacinė sistema.
- Yra keli metodai ir taikymo sritys, skirtos aplinkos kintamiesiems kurti, išvardyti, modifikuoti arba ištrinti „PowerShell“.
- Teisingas darbas su aplinkos kintamaisiais pagerina scenarijų automatizavimą, saugumą ir perkeliamumą.
The Aplinkos kintamieji „PowerShell“ programoje tapo būtinu įrankiu tiek sistemų administratoriams, tiek kūrėjams. Tinkamas valdymas leidžia pritaikyti operacinės sistemos ir skirtingų programų veikimą, palengvinant automatizavimą, integracijas ir komandinį darbą. PowerShell ", būdamas konsole komandos Labai galingas ir lankstus, jis siūlo įvairius būdus pasiekti, modifikuoti ir išsaugoti aplinkos kintamuosius tiek konkretiems seansams, tiek visam laikui.
Norint kuo geriau išnaudoti šią konsolę, labai svarbu suprasti, kaip šie kintamieji veikia „PowerShell“, kuo jie valdomi skirtingose operacinėse sistemose, ir kokie yra efektyviausi jų įtraukimo į sąrašą, kūrimo ar modifikavimo metodai. Toliau aptarsime visus svarbius aplinkos kintamųjų manipuliavimo „PowerShell“ aspektų aspektus – nuo pagrindinės teorijos iki pažangių pavyzdžių, integruodami visą geriausią praktiką ir esminius ekspertų ir bendruomenių surinktus patarimus, taip pat oficialią dokumentaciją.
Kas yra aplinkos kintamieji ir kam jie naudojami „PowerShell“?
Aplinkos įvairovė Tai raktų ir reikšmių poros, kuriose saugoma informacija, kurią naudoja ir operacinė sistema, ir veikiančios programos. Jie leidžia daryti įtaką programų elgesiui, palengvinti procesų bendravimą ir išsaugoti nuolatines konfigūracijas (pvz., kelius, nuostatas, kredencialus ir kt.). Atsižvelgiant į PowerShell "Šie kintamieji suteikia milžinišką lankstumą tinkinant scenarijus, automatizuojant užduotis ir užtikrinant, kad procesai paveldėtų tinkamą aplinką, kai paleidžiami iš konsolės.
Pavyzdžiui, kintamasis KELIAS Pateikiamas katalogų, kuriuos sistema tikrina, norėdama rasti vykdomuosius failus, sąrašas. Tokiu būdu galite paleisti bet kurią programą neįvesdami viso jos kelio, jei tik jos aplankas yra įtrauktas į šį kintamąjį. Kiti įprasti aplinkos kintamieji yra šie: TEMP, Vartotojo vardas o PRADŽIA (sistemose unix), o „PowerShell“ taip pat yra konkrečių kintamųjų, kurie yra ypač naudingi, pvz. PSModulPath, POWERSHELL_TELEMETRY_OPTOUT ir daug daugiau.
Efektyvus šių kintamųjų valdymas Tai leidžia pritaikyti aplinkas skirtingiems vartotojams, projektams ar net konkretiems kūrimo ir gamybos etapams, o tai labai vertinama tiek mažose komandose, tiek didelėse IT infrastruktūrose.
Aplinkos kintamųjų naudojimo „PowerShell“ pranašumai
Naudokite Aplinkos kintamieji „PowerShell“ programoje Jis turi daug privalumų, ypač tais atvejais, kai svarbiausi yra scenarijų automatizavimas ir perkeliamumas. Svarbiausi dalykai:
- Lankstumas: Jie leidžia keisti elgseną nekeičiant kodo, pritaikant scenarijus ir programas skirtingiems kontekstams.
- Apsauga: El sandėliavimas jautrių duomenų, tokių kaip raktai ar žetonai, naudojimas aplinkos kintamuosiuose vengia jų atskleidimo šaltinio kode.
- Patvarumas: Galima išlaikyti reikšmes tarp sesijų arba net išsaugoti nuolatinius kintamuosius visiems sistemos vartotojams.
- Proceso paveldėjimas: Vaikų procesai gali paveldėti aplinkos kintamuosius iš savo tėvų, o tai yra būtina sudėtingų užduočių atlikimui.
Todėl teisingas šių kintamųjų valdymas yra esminis įgūdis bet kuriam specialistui, dirbančiam su „PowerShell“ aplinkose. Windows, Linux arba „macOS“.
Aplinkos kintamųjų taikymo sritys „PowerShell“ programoje
En PowerShell ", aplinkos kintamieji egzistuoja keliose apimtis arba lygiai, kurie lemia jų matomumą ir išlikimą:
- Proceso apimtis: Tai veikia tik dabartinę „PowerShell“ sesiją arba procesą. Kai sesija uždaroma, kintamieji išnyksta.
- Vartotojo apimtis: Kintamieji saugomi tik juos apibrėžusiam vartotojui ir yra prieinami visuose jo seansuose, tačiau neturi įtakos kitiems vartotojams.
- Mašinos (sistemos) apimtis: Jie apibrėžti visiems operacinės sistemos vartotojams ir procesams, užtikrinant maksimalų patikimumą ir taikymo sritį.
Kintamųjų modifikavimas vartotojo ir kompiuterio lygmenimis reikalauja atitinkamų leidimų, o šie pakeitimai dažnai atsispindi „Windows“ registre arba konfigūracijos failuose, priklausomai nuo operacinės sistemos.
Kaip išvardyti ir užklausti aplinkos kintamuosius „PowerShell“ programoje
Yra keli būdai, kaip pateikti užklausą apie galimus aplinkos kintamuosius. PowerShell " Tai siūlo greitus ir efektyvius metodus tiek gauti visą sąrašą, tiek ieškoti konkrečių kintamųjų:
- Visas sąrašas: Pagrindinė komanda yra Get-ChildItem aplinka:, kuriame rodomi visi aplinkos kintamieji ir jų atitinkamos vertės dabartinėje sesijoje. Jo slapyvardžiai, pvz. gci aplinka:, rež. Env: y ls aplinka:, jie veikia vienodai.
- Individuali konsultacija: Norint peržiūrėti konkretaus kintamojo reikšmę, naudojama sintaksė $Aplinka:KintamojoPavadinimas, Pavyzdžiui, $Aplinka:KELIAS rodo PATH kintamojo reikšmę.
- Filtruoti rezultatus: Galite derinti Get-ChildItem aplinka: su Kur-objektas ieškoti kintamųjų, kurių pavadinimas arba reikšmė atitinka nurodytą kriterijų.
Palyginti su klasika Cmd, kur naudojama komanda nustatyti„PowerShell“ parinktys yra daug galingesnės, todėl galite lengvai pritaikyti ir manipuliuoti išvestimi.
Aplinkos kintamųjų kūrimas ir modifikavimas programoje „PowerShell“
Aplinkos kintamųjų kūrimas arba modifikavimas „PowerShell“ yra labai paprastas. Yra keli galimi metodai, priklausomai nuo to, kokią taikymo sritį norite turėti kintamajam:
Tiesioginis metodas su $Env:
Greičiausias ir dažniausiai naudojamas būdas yra priskirti reikšmę tiesiogiai konsolėje:
$Env:MiVariable = "ValorEjemplo"
Pakeitimas galios tik dabartinei sesijai. Jei uždarysite konsolę, kintamasis išnyks.
Aplinkos teikėjo cmdlet'ų naudojimas
El aplinkos teikėjas „PowerShell“ leidžia tvarkyti kintamuosius taip, lyg jie būtų failai arba failų sistemos elementai:
- Sukurkite naują kintamąjį:
New-Item -Path Env:\MiVariable -Value 'ValorEjemplo' - Keisti reikšmę:
Set-Item -Path Env:\MiVariable -Value 'NuevoValor' - Pervardyti kintamąjį:
Rename-Item -Path Env:MiVariable -NewName NuevoNombre
Šios cmdlet komandos veikia tik dabartinę sesiją, nebent naudojami nuolatiniai sprendimai, kuriuos aptarsime vėliau.
.NET pagrįsti metodai
„PowerShell“ leidžia naudoti .NET klases ir metodus. Aplinkos kintamiesiems paprastai naudojama klasė Sistemos.Aplinka. Norėdami apibrėžti arba modifikuoti kintamuosius nuolat, naudokite:
::SetEnvironmentVariable('MiVariable', 'ValorEjemplo', 'User')
Trečiasis parametras nurodo taikymo sritį: Procesas, vartotojas o Mašina. Tai leidžia nustatyti kintamuosius nuolat vartotojui arba sistemai.
Ištrinkite aplinkos kintamuosius „PowerShell“
Aplinkos kintamojo ištrynimas yra toks pat paprastas, kaip ir jo sukūrimas. Priklausomai nuo naudojamo metodo, tai galima padaryti keliais būdais:
- Priskiriant tuščią reikšmę arba $null:
$Env:MiVariable = ''o$Env:MiVariable = $null. Esate pašalintas iš dabartinės sesijos. - Pašalinti elementą:
Remove-Item -Path Env:\MiVariable. Ištrina kintamąjį iš sesijos. - Su .NET:
::SetEnvironmentVariable('MiVariable', '', 'User'). Pašalina vartotojo kintamąjį sistemoje „Windows“.
Svarbu netrinti ir neperrašyti sistemos kintamųjų nežinant, kokį poveikį jie turės, nes kai kurie iš jų yra būtini tinkamam operacinės sistemos ar įdiegtų programų veikimui.
Išplėstinis valdymas: atkaklumas ir profiliai
Yra daug atvejų, kai naudinga turėti aplinkos kintamąjį nuolat prieinamą, net ir paleidus kompiuterį iš naujo arba atidarius naujas sesijas. Norėdami tai padaryti, turite skirtingas alternatyvas, priklausomai nuo operacinės sistemos ir tikslo:
Redaguoti „PowerShell“ profilį
El „PowerShell“ profilis yra scenarijus kuris paleidžiamas kiekvieną kartą atidarius konsolę. Galite pridėti eilutes, kad apibrėžtumėte aplinkos kintamuosius, jog jie visada būtų prieinami.
# Ver ruta del perfil
echo $PROFILE
# Si no existe, créalo
new-item -path $PROFILE -ItemType File -Force
# Añade al perfil la declaración para persistir variables
$perfilContenido = @"
$Env:MiVariable = "Valor persistente"
"@
$perfilContenido | Add-Content -Path $PROFILE
Tai užtikrina, kad kintamasis bus pasiekiamas kiekviename naujame to vartotojo „PowerShell“ seanse.
Naudojant „SetEnvironmentVariable()“ su apimtimi
su ::Nustatyti aplinkos kintamąjį Galite sukurti vartotojo arba sistemos kintamuosius, kurie išlieka uždarius konsolę arba paleidus „Windows“ iš naujo. Be to, šiame vadove aptariami kai kurie su aplinkos kintamųjų valdymu „PowerShell“ susiję aspektai. Tvarkykite GPO „PowerShell“..
::SetEnvironmentVariable('MiVariable', 'Valor', 'User')
::SetEnvironmentVariable('MiVariable', 'Valor', 'Machine')
Pirmoji komanda išsaugo tik vartotojui, antroji – visiems. Pašalinimas atliekamas taip pat kaip ir anksčiau, priskiriant tuščią eilutę.
Aplinkos kintamieji „PowerShell“: praktiniai pavyzdžiai ir specialūs kintamieji
Be tradicinių kintamųjų, PowerShell " Jis turi savo kintamuosius, kurie leidžia dar labiau pritaikyti konsolės aplinką. Kai kurie svarbiausi yra šie:
- POWERSHELL_TELEMETRY_OPTOUT: Leidžia išjungti telemetrijos duomenų siuntimą „Microsoft“.
- POWERSHELL_DISTRIBUTION_CHANNEL: Praneša, kaip buvo įdiegtas „PowerShell“ egzempliorius (rankinis modifikavimas nerekomenduojamas).
- POWERSHELL_UPDATECHECK: Valdo atnaujinimų pranešimų elgseną.
- PS vykdymo politikos nuostata: Atspindi scenarijaus vykdymo politiką dabartinėje sesijoje (tik „Windows“).
- PSModulPath: Aplankų, kuriuose „PowerShell“ ieško modulių ir išteklių, sąrašas.
- PSModuleAnalysisCachePath: Kelias į modulių ir cmdlet talpyklos failą, naudingas ieškai ir importavimui pagreitinti.
- PSDisableModuleAnalysisCacheCleanup: Leidžia išjungti automatinį modulio talpyklos valymą.
Tinkamai sukonfigūravus šiuos kintamuosius, galima optimizuoti „PowerShell“ aplinkų našumą, saugumą ir valdymą.
PATH, PATHEXT ir standartiniai kintamieji „Windows“ ir kitose sistemose
Tarp visų aplinkos kintamųjų, KELIAS turbūt yra aktualiausia. Saugo katalogus, kuriuos sistema nuskaito, kai vykdote komandą be viso kelio. Į Windows, katalogai atskirti kabliataškiais ;, naudojant „Unix“ sistemas : kaip katalogų skirtuką.
Kitas įdomus kintamasis yra PATHEXT, kuris nurodo, kurie plėtiniai laikomi vykdomaisiais, todėl skirtingų kalbų scenarijus galima paleisti tiesiog iškviečiant jų pavadinimą.
Kitose sistemose nei „Windows“ įprasta rasti standartinius XDG kintamuosius (pavyzdžiui, XDG_CONFIG_HOME, XDG_DATA_HOME o XDG_CACHE_HOME), kurį „PowerShell“ taip pat atpažįsta, jei jis veikia tose platformose, laikydamasi sistemos standartų.
Kaip dirbti su aplinkos kintamaisiais „Linux“ ir „macOS“ sistemose naudojant „PowerShell“
PowerShell " Jis yra kelių platformų, todėl tuos pačius pagrindinius metodus galite naudoti ir „Unix“ pagrindu sukurtose sistemose. Tačiau norint, kad kintamieji išliktų ir po „PowerShell“ seanso, turėsite juos modifikuoti atitinkamuose inicijavimo failuose. Pavyzdžiui:
- /etc/aplinka: Visuotinis failas „Linux“ sistemoje, kuriame galite apibrėžti nuolatinius kintamuosius visiems vartotojams.
- /etc/profile.d/: Aplankas, kuriame galite patalpinti scenarijus, kurie nustato kintamuosius paleidžiant apvalkalo sesiją.
- ~/.bashrc arba ~/.zshrc: Vartotojui ir apvalkalui būdingi failai, į kuriuos galite eksportuoti kintamuosius, kurie įkeliami prisijungus.
Atminkite, kad norint, jog kintamieji veiktų visuotinai, jums reikia administratoriaus teisių ir turėsite paleisti sesiją arba sistemą iš naujo.
Aistringas rašytojas apie baitų pasaulį ir technologijas apskritai. Man patinka dalytis savo žiniomis rašydamas, būtent tai ir darysiu šiame tinklaraštyje, parodysiu jums įdomiausius dalykus apie programėles, programinę įrangą, techninę įrangą, technologijų tendencijas ir kt. Mano tikslas – padėti jums paprastai ir smagiai naršyti skaitmeniniame pasaulyje.

