Atașați un script PowerShell pentru a porni automat programul. Cum se deschide PowerShell, toate metodele

Atașați un script PowerShell pentru a porni automat programul. Cum se deschide PowerShell, toate metodele

Rularea scripturilor PowerShell dintr-o privire

În prealabil, aproape oricărui administrator de sistem va trebui să scrie diverse scripturi și să le lanseze. Programarea lansării scriptului din spatele ajutorului Task Sheduler este o sarcină dificilă, dar dacă utilizați PowerShell, există câteva nuanțe pe care le recunoaștem din acest statut.

Acum, de exemplu, am un script start.ps1, pe care trebuie să-l rulez în fiecare zi timp de 10 zile. Există două moduri de a atinge acest obiectiv.

Metoda 1

Pentru a rula rapid scriptul, utilizați echipamentul Task Scheduler, utilizați Task Scheduler. Îl puteți găsi în secțiunea Instrumente administrative sau făcând clic Win+Rși introducerea comenzii taskschd.msc. Deschideți planificatorul și selectați elementul Creare sarcină din secțiunea Acțiuni.

În fila General puteți specifica descrierea jobului, precum și (dacă este necesar) tipul jobului care va fi lansat. Pentru ca datele să fie salvate, indiferent dacă utilizatorul este conectat la sistem, selectați opțiunea „Rulați dacă utilizatorul este conectat sau nu”. Dacă o anumită sarcină necesită o creștere a privilegiilor, atunci este indicată opțiunea „Execută cu cele mai mari privilegii”.

Apoi, mergem la fila Declanșatoare și creăm un nou declanșator, care va avea un program pentru lansarea sarcinii noastre. Câmpul Start indică data și ora începerii, iar câmpul Expire indică data și ora finalizării. Puteți alege să anulați data în fiecare zi (Zilnic) și să setați perioada de repetare (Repetare la fiecare) la 1 zi.

Notă. Dacă doriți să rulați sarcina mai des, cel puțin o dată pe zi, atunci trebuie să selectați O dată, iar în secțiunea Setări avansate, selectați Repetați sarcina pentru fiecare articol și specificați ora de repetare pentru minim 5 ore pentru un maxim 1 an. Dacă acest lucru nu este suficient, puteți adăuga o întârziere în câmpul Întârziere până la.

eu sufoc. Accesați fila Acțiune și specificați acțiunea pentru sarcina planificată. Permiteți-mi să vă reamintesc că, cu metoda de securitate PowerShell, scripturile pot fi deschise doar interactiv, așa că mai întâi trebuie să lansați shell-ul PowerShell și apoi să introduceți calea către script în el. Prin urmare, în câmpul „Acțiune”, puteți specifica lansarea powershell.exe, iar în câmpul „Adăugați argumente”, parametrul -Fișier și aceasta duce la scriptul nostru, axa este astfel:

Fișierul ″C:Scripts¥start.ps1″

De asemenea, puteți introduce următoarele în câmpul de argument:

Comandă — Configura comenzile specificate și alți parametri. Acest parametru poate fi folosit și pentru a rula scriptul, de exemplu: -Comandă ″& (C:\Scripts\start.ps1)″. În plus, puteți transmite și parametri scriptului: -Comandă ″& (C:\Scripts\start.ps1 -a 1 -b 3)″;
-ExecutionPolicy — setează politica de execuție a scriptului pentru sesiunea threaded, care poate lua valorile Unrestricted, RemoteSigned, AllSigned și Restricted. Politica zilei este stabilită numai în sesiune de streaming Are prioritate față de orice politici create anterior;
-NonInteractive - permite afișarea interogărilor interactive înainte de înregistrare;
-WindowStyle Hidden - lansarea unei ferestre PowerShell în modul privat, nu pentru utilizator;
-NoProfile - dezactivează profilul selectat, ceea ce poate grăbi execuția scriptului;
-NoExit - Ieșiți din shell după executarea scriptului. Poate fi necesar să revizuiți și să ajustați scenariul.

După ce ați completat câmpurile necesare, apăsați OK și salvați setările. Acum scriptul este lansat și va fi programat în fiecare zi pentru o oră dată timp de 10 zile.

Metoda 2

PowerShell 3.0 introduce o nouă funcționalitate Scheduled Job, care face posibilă crearea de joburi programate direct din consolă, fără a vă încurca cu snap-in-ul de planificare. Vom accelera lansarea programată a scriptului nostru.

Începând de acum, să creăm un program de lansare (azi vineri seara, cu o durată de 10 zile):

$t = New-JobTrigger -Zilnic -La 16:30 -DaysInterval 10

Apoi este salvat într-un cloud de date modificabile:

$cred = Get-Credential contoso\administrator

Această opțiune specifică lansarea unei sarcini cu privilegii avansate:

$o = New-ScheduledJobOption -RunElevated

Înregistrez sarcina din numele de început:

Register-ScheduledJob -Name Start -FilePath C:\Scripts\start.ps1 -Trigger $t -Credential $cred -ScheduledJobOption $o

Pentru a verifica dacă jobul a fost creat, puteți deschide planificatorul și găsiți jobul nostru în secțiunea Microsoft\Windows\PowerShell\SheduledJobs.

Notă. Pentru fiecare job PowerShell programat, este creat un folder cu un singur nume în directorul %systemdrive%\Users\%username%\AppData\Local\Microsoft\Windows\PowerShell\ScheduledJobs. Acest folder conține același fișier în fișierul XML și folderul Output, în care, în subfoldere pe oră, este salvat istoricul încărcării - rezultatul încărcării (fișierul Result.xml) și starea încărcării (Status). .xml). Aceste fișiere pot fi utile pentru îmbunătățirea diagnosticului în cazul în care munca nu este efectuată corespunzător.

Politica de execuție

În cele din urmă, vă voi aminti despre un moment important și despre politica Politicii de execuție a scripturilor Vikonanny. Puteți vedea semnificația exactă a politicii folosind comanda Get-ExecutionPolicy. Politica lui Vikonanny poate însemna:

Restricţionat – orice script este blocat. Semnificație pentru spălare;
AllSigned - este permisă semnarea scripturilor care creează o semnătură digitală;
RemoteSigned - scripturi pregătite pe un computer local, pot fi lansate fără întrerupere, scripturi accesate de pe Internet, cu excepția prezenței unei semnături digitale;
Nerestricționat - sunt permise orice scripturi. Când rulați un script nesemnat descărcat de pe Internet, programul poate necesita confirmare;
Bypass – nimic nu este blocat, cererile și cererile zilnice nu apar.

Pentru o execuție fără probleme a scripturilor, este suficient să setați valoarea RemoteSigned. Puteți modifica valori mai precise utilizând comanda Set-ExecutionPolicy, de exemplu:

Set-ExecutionPolicy RemoteSigned -force

Notă. Dacă politica de grup este atribuită comenzii de politică de grup, parametrul va fi scris în registru, altfel nu va exista nicio acțiune.

Rularea unui script PowerShell

Această notă este dedicată unei descrieri a setării parametrilor necesari pentru lansare PowerShell scenarii. Cel mai adesea la prima pornire .ps1 scripturi, beneficiați de următoarele beneficii:

Fişier imposibil de atras. Fişier Nu există semnătură digitală. Scriptul nu va fi vizibil pentru sistem. Pentru a accesa informații suplimentare, introduceți „Get-Help about_signing”.
Fișierul nu poate fi încărcat. Fișierul nu este semnat digital. Scriptul nu se va executa pe sistem. Consultați „Obține ajutor despre_semnare” pentru mai multe detalii.

Rulați programul ca un vizualizator nesigur? Fişier publicat de CN= Acest dispozitiv nu este marcat ca fiabil în acest sistem. Încheiați urma din scenariile celor mai de încredere telespectatori.
[V] Nu renunțați niciodată [D] Nu renunțați [R] Vicont o dată [A] Renunțați întotdeauna [?] Dovidka (în spatele „D”):
Doriți să rulați software de la acest editor nede încredere? Fișierul este publicat de CN= Acest editor nu este de încredere în sistemul dvs. Rulați scripturi numai de la editori de încredere.
[V] Nu rulați niciodată [D] Nu rulați [R] Rulați o dată [A] Rulați întotdeauna [?] Ajutor (implicit este „D”):

Citate și notificări folosind setările politicii Windows PowerShell. Este greu de imaginat că acești parametri îmbunătățesc în mod eficient securitatea sistemului de operare, iar codul încă necesită să-l copiați în consola PowerShell. În acest fel, sistemul de siguranță poate fi oprit - duhoarea este protejată numai de acțiunile epileptice. Fă-l să cânte Această problemă este rezolvată de echipă:

Set-ExecutionPolicy LocalMachine fără restricții

Desigur, o astfel de abordare nu stagnează în mediul corporativ, așa că vom analiza această situație într-un raport. Puteți vizualiza setările exacte ale politicii în toate zonele de stagnare selectând cmdletul Get-Executionpolicy Din parametrul listă.

get-executionpolicy -list

Domeniul de aplicare ExecutionPolicy
—— —————
MachinePolicy Nerestricționat
Politica utilizatorului Nedefinit
Proces Semnat la distanță
Utilizator curent Toate semnate
LocalMachine Restricţionat

Această politică poate fi setată la 6 valori:

Restricţionat(Politica se bazează pe valoarea hainelor. De exemplu, toate galuza au o valoare nedefinită)
- Permite alte comenzi, dar scripturile nu pot fi șterse.
— Omite toate fișierele de script, inclusiv fișierele de formatare și configurare (PS1XML), fișierele de script de modul (PSM1) și profilurile Windows PowerShell (PS1).

Toate semnate

— Este important ca toate scripturile și fișierele de configurare să fie semnate de un furnizor de încredere, inclusiv scripturile pregătite pe computerul local.
— Înainte de scripturile Vikonanny ale speciei, pentru care nu s-a stabilit încă ce fel de duhoare sunt, se va face un pas preliminar.
— Există riscul de a elimina scripturile nesemnate de pe dispozitivele care sunt vizibile pe Internet, precum și scripturile semnate și nesigure.

Semnat la distanță
- Sunt permise scripturile Vikonanny.
— Subliniază prezența unei semnături digitale a unui furnizor de încredere în scripturi și fișiere de configurare care sunt accesate de pe Internet (inclusiv programe de e-mail și de mesagerie pentru întâlniri).
— Nu va necesita prezența semnăturilor digitale în scripturile care sunt scrise pe un computer local (neconectat la Internet).
— Există riscul de a revendica semnăturile și scenariile neprofitabile.

Nerestricționat
— Scripturile nesemnate pot fi dezactivate. (Scripturi Rizik vykonannaya skidlykh.)
— Avansează utilizatorul înainte de a căuta scripturi și fișiere de configurare descărcate de pe Internet.

Bypass
— Nimic nu este blocat și nu apar cereri noi.
— Această politică este destinată configurațiilor în care scriptul Windows PowerShell rulează un program mai mare sau pentru configurațiile în care Windows PowerShell este o platformă pentru programe care au un model de securitate diferit.

Nedefinit
— Regiunea actuală nu are instalată o politică Viconniya.
— Deoarece politica Wicon pentru toate domeniile este Nedefinită, politica Wicon este restricționată, care este politica Wicon standard.

Există cinci domenii de setări ale politicilor și parametrilor:

MachinePolicyі Politica utilizatorului sunt stabilite de politicile AD sau politicile computerelor locale.
Proces- sfera de stagnare este o sesiune continua. Se pare că valorile sale sunt salvate în modificarea $PSExecutionPolicyPreference, dar nu este posibilă anularea/modificarea valorilor politicii prin modificare. Modificările aduse acestei zone de stagnare nu se vor aplica altor sesiuni.
Utilizator curent- sfera de stagnare a echipamentelor de producție în linie. Aceste valori sunt stocate în secțiunea de registru HKEY_CURRENT_USER ("HKEY_CURRENT_USER\Software\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell\ExecutionPolicy").
LocalMachine— domeniul de aplicare al zastosuvannya pentru toți utilizatorii de calculatoare de flux. Este salvat în secțiunea de registru HKEY_LOCAL_MACHINE ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\ScriptedDiagnostics\ExecutionPolicy").

La echipa politica de execuțieє -Parametrul de aplicare. Pentru acest parametru suplimentar, puteți selecta zona de politică pentru care va apărea valoarea politicii.

Procesul Get-ExecutionPolicy -scope

Rezultatul cmdlet-ului wiki: Semnat la distanță

În acest caz, Zona de stare are cea mai mare prioritate pentru MachinePolicy, apoi UserPolicy, Process, CurrentUser și cea mai mică prioritate pentru LocalMachine.
La asta în fund:

Domeniul de aplicare ExecutionPolicy
—— —————
MachinePolicy Nerestricționat
Politica utilizatorului Nedefinit
Proces Semnat la distanță
Utilizator curent Toate semnate
LocalMachine Restricţionat

Pentru sesiunea curentă, politica de rezultat este setată la Nerestricționat.

Pentru a afla semnificația politicii de execuție a scripturilor pentru o anumită sesiune, trebuie să rulați cmdletul Get-ExecutionPolicy fără parametri.

Visnovok: Nerestricționat

Schimbarea politicii privind scripturile PowerShell:

Pentru a modifica valorile politicii scripturilor PowerShell, utilizați cmdletul Set-ExecutionPolicy.
Acest cmdlet are următorii parametri:

-ExecutionPolicy
Indică sensul politicii. Valori posibile: Restricted, AllSigned, RemoteSigned, Unrestricted, Bypass, Undefined. Acest parametru este ușor de introdus. Dacă nu este indicat, la ora Viconnaya comandantul vă va cere să indicați sensul.

Visnovok:
Indicați valorile pentru parametrii disponibili:
Politica de execuție:

- Domeniul de aplicare
Acesta indică domeniul de aplicare al acestei politici. Poate următoarele valori: LocalMachine, Process, CurrentUser. Dacă parametrul zonei de setare nu este specificat, valoarea LocalMachine este specificată pentru setări.

Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope Process

Set-ExecutionPolicy Proces nerestricționat

-Forta
Cu acest parametru, cmdletul nu necesită confirmare din partea managerului de cont. De exemplu:

Set-ExecutionPolicy Proces nerestricționat -Forță

Cmdletul nu afișează nimic pe ecran, iar valorile politicii sunt înghețate.

-A confirma
De parcă o singură confirmare nu este suficientă pentru tine. Puteți introduce parametrul Confirmare și veți avea o altă solicitare suplimentară pentru a vă confirma acțiunile:

Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope Process -confirmare

Rezultatul Vikonanny:

Confirmare
Chiar vrei să eliberezi asta?
Configurați operația Set-ExecutionPolicy pe obiectul țintă Unrestricted.
[Y] Deci - Y [A] Deci pentru toată lumea - A [N] Ні - N [L] Ні pentru toată lumea - L [S] Aplicați - S [?] Finalizare (valorile din spatele concluziilor sunt „Y” ):

Schimbarea politicii
Politica protejează computerul de scenarii care nu sunt de încredere. Modificarea politicii Windows poate reprezenta o amenințare la adresa securității sistemului, așa cum este descris în secțiunea de avertizare, care este accesată de comanda about_Execution_Policies. Doriți să schimbați politica Viconniană?
[Y] Deci - Y [N] Ні - N [S] Suspensie - S [?] Adăugare (valorile din spatele calculelor sunt „Y”):. exe -executionpolicy Nerestricționat

Get-ExecutionPolicy -list

Rezultatul Vikonanny:

Domeniul de aplicare ExecutionPolicy
—— —————
MachinePolicy Nerestricționat
Politica utilizatorului Nedefinit
Proces Semnat la distanță
Utilizator curent Toate semnate
LocalMachine Restricţionat

Modificarea parametrilor politicii pentru rularea scripturilor folosind politici de grup.

Politica de grup are un parametru care controlează lansarea scripturilor în felul următor:

Pentru MachinePolicy:

Configurare computer/Politici/Șabloane administrative/Componente Windows/Windows PowerShell

Configurare computer/Șabloane administrative/Componente Windows/Windows PowerShell

Pentru Politica utilizatorului:
Configurare utilizator/Politici/Șabloane administrative/Componente Windows/Windows PowerShell

Configurare client/Șabloane administrative/Componente Windows/Windows PowerShell

Parametrul Politică de execuție poate fi setat la 3 valori.

Rularea programelor folosind PowerShell

Sarcina de a rula orice fișier concatenat (program sau utilitar de linie de comandă) din PowerShell poate deveni adesea plictisitor. PowerShell oferă o serie de metode diferite, după cum vom analiza mai târziu în acest articol. Să începem cu cel mai simplu...

Lansare directă

Cel mai simplu mod de a rula un fișier PowerShell compilat este să mergeți la directorul cu fișierul și să îl porniți de la mijloc. De exemplu, să luăm un program simplu care afișează textul și să-l terminăm cu comanda:

Set-Location ″C:\Program Files″
.\Bună ziua.exe

Vă rugăm să rețineți că, dacă vă aflați în catalogul necesar, trebuie să indicați calea de conectare la fișierul care este în curs de finalizare. Este necesar să instalați fișiere din director, care au fost schimbate în locația corectă (calea). De exemplu, o varietate de programe și utilitare instalate (notepad, calc, ping etc.) situate în directorul Windows\System32 pot fi lansate fără a introduce calea.

Operator &

Dacă trebuie să introduceți o nouă cale către fișierul care este adăugat, o puteți accesa rapid de către operator & (operator Wikliku). Vă permite să introduceți un rând de text și instrucțiuni pe labe ca o singură comandă. De exemplu:

& „C:\Program Files\Hello.exe”

Deoarece operatorul & nu analizează comanda care este transmisă, nu poate interpreta parametrii acesteia. Prin urmare, parametrii/argumentele adiționale sunt transmise și textului vizual, paginilor. De exemplu, luăm programul anterior și îl schimbăm puțin, deci ia textul necesar sub forma unui argument:

& „C:\Program Files\Hello.exe” „Bună ziua, lume”

Puteți oferi o serie de argumente pentru interdicție prin intermediul cui:

& „C:\Program Files\Hello.exe” „Bună”, „world”

Pentru simplitate, comanda și argumentele pot fi plasate în submeniu:

$exe = „C:\Program Files\Hello.exe”
$arg1 = „Bună ziua”
$arg2 = 'lume'
& $exe $arg1 $arg2

Ei bine, există o mulțime de argumente, ele pot fi rezumate prin următoarea construcție:

$exe = „C:\Program Files\Hello.exe”
$allargs = @('Bună,','lume')
& $exe $allargs

Invocare-Expresie

Cmdletul Invoke-Expression funcționează aproape în același mod, deoarece operatorul & preia un rând de text și îl selectează ca comandă. De exemplu:

Invoke-Expression -Comandă „C:\Windows\Hello.exe”

Cu toate acestea, există un mare neajuns și este imposibil să faceți față lacunelor. De exemplu, următoarea comandă cere milă:

Invoke-Expression -Comandă „C:\Program Files\Hello.exe”

Această caracteristică face cmdlet-ul să stagneze la margine de negestionat. Dacă aveți nevoie de astfel de ajutor, puteți folosi labele suplimentare, de exemplu:

Invoke-Expression -Comandă C: Fișiere de program Hello.exe

Start-Proces

Cmdletul Start-Process lansează un fișier declarație în vederea procesului, metoda vikoryst start Clasa .NET Proces. De exemplu:

Start-Process -FilePath „C:\Program Files\Hello.exe”

După terminare, procesul se încheie cu o fereastră de sticlă care se închide după finalizarea procesului. Puteți modifica acest comportament utilizând parametri suplimentari, deci există o comandă de rulat în fereastra curentă:

Start-Process -FilePath 'C:\Program Files\Hello.exe' -NoNewWindow -Wait

Start-Process vă permite, de asemenea, să transmiteți argumente suplimentare procesului:

Start-Process -FilePath 'C:\Program Files\Hello.exe' -ArgumentList 'Hello, world' -NoNewWindow -Wait

În scop promoțional, cmdletul nu rotește nimic, dar cu ajutorul lui -PassThru poți roti obiectul procesului. Acest obiect poate fi ușor plasat în meniu:

$process = Start-Process -FilePath 'C:\Program Files\Hello.exe' -Wait -PassThru

Din care puteți recunoaște apoi o mulțime de discursuri colorate, cum ar fi statutul:

$process.HasExited

$process.ExitTime

sau codul Wiccan:

$proces.ExitCode

.NET

În principiu, clasa .NET Process poate fi utilizată rapid fără a fi nevoie de cmdletul Start-Process. De exemplu, puteți începe procesul cu comanda:

::Start(′C:\Program Files\Hello.exe′)

Această metodă de hrănire este greu de gestionat și greoaie (după părerea mea) și chiar puțin mai subțire în vikoristan. De exemplu, să lansăm programul nostru din fereastra de flux, să îi transmitem argumente și să luăm rezultatul ferestrei:

$process = New-Object -TypeName System.Diagnostics.Process
$process.StartInfo.FileName = C: Fișiere program Hello.exe
$process.StartInfo.Arguments = ″Bună ziua, lume″
$process.StartInfo.RedirectStandardOutput = $true
$process.StartInfo.UseShellExecute = $false
$process.Start()
$process.WaitForExit()

$process.StandatdOutput.ReadToEnd()

WMI

Folosind WMI puteți face aproape orice, inclusiv lansarea unui program. Pentru cine este potrivită metoda? Crea Clasa WMI Win32_Process. Această metodă începe un proces pe un computer local sau la distanță prin RPC. De exemplu, pentru a descărca programe pe un computer local, puteți utiliza rapid următoarea comandă:

()″Win32_Process″).Creare(′C:\Program Files\Hello.exe′)

Și pentru autentificarea pe un computer la distanță, comanda arată astfel:

()″\\remotecomputer\root\cimv2:Win32_Process″).Creează(′C:\Program Files\Hello.exe′)

Alternativ, puteți utiliza rapid cmdletul Invoke-WmiMethod:

Invoke-WmiMethod -Class Win32_Process -Name Create -ArgumentList ″C:Program FilesHello.exe″

Sau folosind cmdletul Invoke-CimMethod:

Invoke-CimMethod -ClassName Win32_Process -MethodName Creare -Argumente @(CommandLine=″C:\Program Files\Hello.exe″)

WMI pornește un proces într-o fereastră și rotește obiectul pentru a plasa ID-ul procesului (ProcessID) și rezultatul ferestrei (ReturnValue). ReturnValue poate accepta următoarele valori:

0 - Finalizarea cu succes
2 -Acces interzis
3 - Privilegii insuficiente
8 - Eșec necunoscut
9 - Calea nu a fost găsită
21 - Parametru invalid

Invocare-Comandă

Cmdletul Invoke-Command poate lansa comenzi pe un computer local sau la distanță folosind WinRM. De exemplu, pentru a rula programe pe un computer local, utilizați următoarea comandă:

Invoke-Command -ScriptBlock (C: Fișiere de program Hello.exe)

Puteți transmite argumente programului dvs.:

Invoke-Command -ScriptBlock (C: Program Files Hello.exe Bună ziua, lume)

Vă rugăm să rețineți că Invoke-Command nu este bun la a face față spațiilor, așa că trebuie să joace trucuri pentru a evita problemele. Cu toate acestea, probleme similare pot fi evitate, de exemplu, prin combinarea unui cmdlet cu operatorul &:

Invoke-Command -ScriptBlock (& ​​„C:\Program Files\Hello.exe”)

Practic, Invoke-Command este folosit pentru procesarea de la distanță, principalul său avantaj fiind capacitatea de a efectua procesări de o oră pe mai multe computere. De exemplu:

Invoke-Command -ScriptBlock ("C:\'Program Files'\Hello.exe") -ComputerName SRV1,SRV2,SRV3

$scriptblock = (C: Fișiere de program Hello.exe)
$Computers = @('SRV1','SRV2','SRV3')
Invoke-Command -ScriptBlock $scriptblock -ComputerName $Computer

După ce faceți acest lucru, cmdletul rotește rezultatul programului și, dacă îl rulați în fundal (parametrul AsJob), rotește obiectul Job:

Invoke-Command -ScriptBlock (C:\'Program Files'\Hello.exe) -ComputerName localhost -AsJob -JobName Buna ziua

Invocare-Articol

Cmdletul Invoke-Item este folosit pentru a salva fișierul în fișierul standard. Deci, puteți rula fișierul cu comanda:

Invoke-Item -Path ″C:Program FilesHello.exe″

Cu toate acestea, cel mai bine este să utilizați Invoke-Item pentru a selecta tipul de fișier adecvat. De exemplu, așa deschidem un fișier text:

Invoke-Item -Cale ″C:\Files\test.txt″

Și iată toate fișierele text pe care le are tatăl meu:

Invoke-Item -Cale ″C:\Files\*.txt″

CMD

Ei bine, în sfârșit, încă o modalitate de a lansa programe din PowerShell folosind shell-ul cmd suplimentar. Modul de administrare este „indirect”, dar nu este mai puțin eficient. Următoarea comandă lansează o nouă instanță a cmd, salvează noul program alocat, oprește cmd și rotește rezultatul:

cmd /c ″C:Program FilesHello.exe″

Această axă a modalităților non-personale de lansare a programului este furnizată de PoSh. Și pielea lor este bună pentru toate situațiile.

Înainte de a vorbi, articolul este scris pe baza PowerShell: Deep Dive și cele mai bune practici. Recomand să citești o mulțime de lucruri bune acolo.

Salutare tuturor, astăzi aș dori să știu cum să rulez un script PowerShell pe Windows. Pentru a înțelege situația, ați scris un script care va simplifica foarte mult afișarea informațiilor în Active Directory, deschideți snap-in-ul Powershell, scrieți calea către scriptul dvs., apăsați Enter și debifați.

Imposibil de criptat un fișier<путь к вашему файлу>, fragmente de scripturi vikoniene sunt îngropate în acest sistem. Tastați „get-help about_signing” pentru a vedea informații suplimentare.

Mă întreb cum ar trebui să fie.

PowerShell are o serie de moduri de box, care indică ce tip de cod este permis să boxeze. Totul este controlat de cheia de registry, care este aceeași ca în HKLM. Există 4 moduri diferite de viconnie:

Observatii(Restricționat): politica este strict aplicată, nu permite rularea scripturilor și nu permite comenzi interactive.

Toate abonamentele(Toate semnate): Permite rularea tuturor scripturilor. Este adevărat că toate scripturile și fișierele de configurare trebuie să fie semnate de un furnizor în care aveți încredere; Acest mod vă expune riscului de a semna (sau a vinde) scripturi după ce v-ați revocat încrederea cu furnizorul.

Semnături vizualizate(Semnat de la distanță): scripturile locale rulează fără semnătură. Toate scripturile descărcate mamă vinovat abonament digital.

Non-obligații(Nerestricționat): Toate scripturile și fișierele de configurare extrase din programele de comunicare pe platforma Microsoft Outlook, Internet Explorer, Outlook Express și Windows Messenger rulează după confirmarea că înțelegeți că fișierul provine de pe Internet; Nu sunt necesare semnături digitale noi; Acest mod vă expune riscului de scripturi nesemnate, inutile.

Pentru programele promoționale pentru PowerShell, modul vikory este „Boundaries”. În acest mod, PowerShell funcționează mai mult ca un shell interactiv. Permite rularea scripturilor și descarcă numai fișierele de configurare care sunt semnate de un furnizor în care aveți încredere.

Permiteți scripturi wiki powershell

Pentru a rula scripturile pe care le-ați creat singur, trebuie să permiteți execuția de scripturi care nu sunt de încredere folosind o comandă suplimentară. Set-ExecutionPolicy semnat la distanțăși confirmări (Respect!!! Pentru a executa această comandă, trebuie să rulați PowerShell cu drepturi de administrator). După aceasta, puteți relansa scriptul Vikonanny.

Sursa de alimentare este gravată cu Y pentru a permite crearea de scripturi. După aceste manipulări, puteți rula scriptul.

Bună ziua tuturor! Astăzi o scurtă notă pe această temă, cum se deschide Powershell ca administrator. Aș dori să vă reamintesc că PowerShell, care este un sistem de programare și administrare foarte popular la Microsoft, adaugă în curând din ce în ce mai multe cmdlet-uri și funcționalități. În esență, acesta este un înlocuitor pentru linia de comandă Windows. Mai jos vom analiza metodele care vă permit să îl deschideți și să îl reglați.
.

Metode pentru deschiderea snap-in-ului PowerShell

Powershell se dezvoltă și mai bine odată cu lansarea Windows 10, renunțând la versiunea 5, dar avem un subiect diferit. Deci, cum deschideți PowerShell? Totul este la fel ca Windows XP, în niciun caz. Deci este livrat separat, în toate versiunile viitoare există componente incluse. Cel mai universal mod de a debloca powershell fără apăsare

Win+R și introduceți powershell

Apăsând enter, consola PowerShell se va lansa, singura problemă este că nu se va deschide sub numele administrator. Și, ca urmare, comanda de deconectare nu va fi emisă, este mai puțin probabil să funcționeze ca administrator.

Cum să rulați Windows Powershell ca administrator în Windows 8.1 și Windows 7

Puteți deschide Windows Powershell prin lansare. Pentru Windows 8.1, Windows 2012 R2, accesați Servicii - Windows și faceți clic dreapta și selectați Executare ca administrator.

Pentru Windows 7 și Windows 2008 R2 arată astfel: Start > Accesorii > Windows PowerShell

De asemenea, puteți crea o comandă rapidă către elementul dorit și faceți clic dreapta pe cel nou și selectați alt element

Ar fi bine ca PowerShell să fie mereu deschis ca administrator, așa că hai să o facem. Cu toate acestea, acest lucru se aplică tuturor versiunilor de Windows. Panou ceramic curbat

Faceți clic pe butonul drept al mouse-ului și selectați opțiunea. Puteți să vă uitați imediat la calea către fișier și să o găsiți în sistem.

Apăsăm butonul „Addatkovo”. Vei avea caracteristici suplimentare. Va trebui să bifați caseta de selectare Run as administrator name.

Totul este foarte simplu. Vă mulțumesc foarte mult că acum nu aveți mâncare, cum puteți deschide Windows Powershell. Fontul din fereastra PowerShell este încă maro.

Cum se deschide PowerShell prin meniul contextual al butonului Start din Windows 10

Microsoft pune din ce în ce mai mult accentul pe linia de comandă în limbajul său puternic (PowerShell) și este logic că capacitatea sa de a gestiona sistemele de operare din familia Windows poate fi mai puțin limitată, sau chiar mai puțin grafică. Începând cu Windows 10 versiunea 1709, înlocuirea cmd-ului principal în meniul contextual PowerShell. Faceți clic dreapta pe butonul Start Windows 10 din meniul contextual și selectați următorul element:

  1. Windows PowerShell
  2. Windows PowerShell (administrator) – acesta este exact modul cu drepturi maxime în Windows 10.

Rularea Windows PowerShell pentru ajutor suplimentar în Windows 10

În Windows 10 și versiuni mai vechi, puteți afla shell-ul PowerShell folosind o căutare de bază, pentru care există o secțiune specială. Faceți clic pe rândul de lângă butonul „Start”, pictograma apare ca o lupă. Căutați formularul și introduceți cuvântul PowerShell. Veți avea o gamă largă de opțiuni, printre care veți găsi o coajă. Dacă faceți clic pe el cu butonul din dreapta al mouse-ului, îl puteți deschide ca administrator.

Lansarea Windows PowerShell din meniul Start Windows 10

Pentru a deschide shell-ul PowerShell din meniul Start, deschideți-l și găsiți elementul Windows PowerShell, veți vedea un folder, îl deschideți și lansați noua versiune.

Dacă faceți clic dreapta, puteți lansa shell-ul ca utilizator cu drepturi de administrator.

Metode suplimentare și universale pentru pornirea shell-ului

Există și mai multe modalități specifice de a deschide shell-uri cu o puternică influență Microsoft. Cel mai simplu mod este să aflați pur și simplu fișierul compilat și să îl rulați direct de la instalarea în sistem. Să trecem la versiunea ta de Windows 10:

C:\Utilizatori\im'ya koristuvacha\AppData\Roaming\Microsoft\Windows\Meniu Start\Programe\Windows PowerShell

Ca urmare, veți vedea un folder cu comenzi rapide care se află în meniul Start, le puteți lansa.

De asemenea, puteți rula fișierul original, compilat, care este după cum urmează:

C:\Windows\System32\WindowsPowerShell\v1.0

Și făcând clic dreapta pe el, îl poți bloca ca administrator, cu drepturi maxime.

De asemenea, puteți lansa Windows PowerShell din fereastra de linie de comandă prin simpla introducere a cuvântului și apăsând Enter.

Ei bine, voi ghici și metoda, lansând o nouă fabrică cu echipamentul „Plant Manager”. Deschideți „Task Manager”, selectați elementul de meniu „Fișier - Lansați o nouă lucrare”

În fereastră, introduceți PowerShell.

Ei bine, ultima metodă cunoscută este să lansați PowerShell prin Windows 10 Explorer, pentru care deschideți Explorer, selectați elementul de meniu „Fișier - lansați Windows PowerShell”, vor exista moduri diferite.

Ce este PowerShell ISE

Cântând, v-ați exprimat respectul pentru comanda rapidă PowerShell ISE și ați dori să știți ce este. Pe scurt, acesta este un wrapper special în care puteți scrie scripturi și scripturi în PowerShell, folosind toate tipurile diferite de cmdleturi pe care vi le prezintă Microsoft.

Fontul Powershell poate fi schimbat pur și simplu accesând fila Font, unde puteți seta dimensiunea de la 5 la 72.

Astfel, puteți accesa puterea din fereastra utilitarului, faceți clic pe pictograma din colțul din stânga sus și selectați putere

Aici, ajustând un pic mai mult fontul, schimbând în același timp dimensiunea consolei.

În fila Culori, puteți seta culoarea fontului în Powershell în aceeași fereastră. După ce am lovit yogo, de exemplu, suntem negri, ca un rând de comandă.

De asemenea, Raju, dacă ai o consolă activă, setează dimensiunea bufferului nu la 50 de comenzi, ci la 100.

Vă mulțumesc pentru respectul dumneavoastră. Acestea sunt metodele folosite pentru a deschide consola Power Shell în Windows. Materialul site-ului

 

 

Tse tsikavo: