Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Željezo
  • Instaliranje i konfiguriranje Windows PowerShell. Windows PowerShell - korisne napomene Instalacija powershell-a

Instaliranje i konfiguriranje Windows PowerShell. Windows PowerShell - korisne napomene Instalacija powershell-a

Danas ću vam pokazati kako instalirati i koristiti administrativni modul Active Directory za Windows PowerShell. Cmdleti u ovom modulu mogu se koristiti za dobivanje informacija i upravljanje raznim AD objektima i postavkama. Ovaj modul se instalira u operacijske sustave poslužitelja kao zasebna komponenta. Na desktop operativnim sustavima (Windows 10, 8.1, 7) morat ćete instalirati Remote Server Administration Tools (RSAT) paket koji uključuje modul za interakciju s AD iz PowerShell-a. Uz ovaj modul, RSAT uključuje sve potrebne grafičke upravljačke dodatke, uslužne programe naredbenog retka i Windows PowerShell module za administriranje sustava Windows i AD. Morate sami preuzeti ovaj paket za svoju verziju OS-a s web stranice Microsofta.

Instaliranje modula Active Directory za Windows PowerShell

Modul Active Directory za Windows PowerShell prvi put se pojavio u sustavu Windows Server 2008 R2. Automatski se instalira na . Da biste koristili PowerShell cmdlete iz AD modula, vaša domena mora imati barem jedan kontroler sa sustavom Windows Server 2008 R2 ili novijim. Ako vaša mreža ima samo DC-ove koji pokreću Windows Server 2003 i 2008, trebate preuzeti i instalirati Active Directory Management Gateway Service. PowerShell cmdleti iz modula Active Directory komuniciraju s web uslugom koja je dio kontrolera domene s ADDS ulogom.

Modul Active Directory za Windows PowerShell možete instalirati ne samo na kontroler domene, već i na bilo koji poslužitelj ili radnu stanicu članske domene. U sustavu Windows Server 2016 možete instalirati modul Active Directory za Windows PowerShell iz grafičke konzole Server Manager pomoću čarobnjaka za dodavanje uloga i značajki. Samo pokrenite čarobnjaka i u fazi odabira komponenti trebate odabrati Remote Server Administration Tools -> Role Administration Tools -> AD DS i AD LDS Tools -> Modul Active Directory za Windows PowerShell(Alati za udaljenu administraciju poslužitelja > Alati za administraciju uloga > Alati AD DS i AD LDS -> Modul Active Directory za Windows PowerShell).

Ovaj se modul također može instalirati pomoću PowerShell-a. Otvorite PowerShell konzolu s administratorskim pravima i pokrenite naredbe:

Import-Module ServerManager
Add-WindowsFeature -Name "RSAT-AD-PowerShell" –IncludeAllSubFeature

U sustavima Windows 10, Windows 8.1 i Windows 10, da biste instalirali RSAT-AD-PowerShell modul, prvo morate instalirati odgovarajuću verziju RSAT-a, nakon čega modul treba omogućiti na upravljačkoj ploči (Upravljačka ploča -> Programi -> Programi i značajke i kliknite “Uključi značajke sustava Windows” -> Alati za udaljenu administraciju poslužitelja -> Alati za administraciju uloga -> AD DS i AD LDS alati -> omogućite komponentu Active Directory Module za Windows POwerShell.

Ili možete instalirati modul koristeći PowerShell:

Enable-WindowsOptionalFeature -Online -FeatureName RSATClient-Roles-AD-Powershell

Uvezite i koristite PowerShell modul za Active Directory

U sustavima Windows 7 i Windows Server 2008 R2, na kojima je instaliran PowerShell 2.0, da biste počeli koristiti AD modul, morate ga uvesti u PowerShell sesiju naredbom:

Alternativno, možete izvesti modul s udaljenog računala na kojem je već instaliran i uvesti ga u svoju PowerShell sesiju:

$MySession = New-PSSession -ComputerName MyDomainController
Export-PSsession -Session $MySession -Module ActiveDirectory -OutputModule RemoteADPosh
Remove-PSSession -Session $MySession
Uvozni modul RemoteADPosh

U sustavu Windows Server 2012 R2/2016 i Windows 8.1/Windows 10, modul (ako je instaliran) automatski se uvozi u sesiju.

Ako je računalo pridruženo domeni, pogon se prema zadanim postavkama stvara prema imenu OGLAS:..Možete navigirati do ovog pogona pomoću naredbe CD i koristiti svoje uobičajene naredbe sustava datoteka za navigaciju ovim pogonom. Staze su prikazane u formatu X500.

PS C:\> cd AD:
PS AD:\> dir

PS AD:\> cd "DC=vmblog,DC=ru"

Možete prikazati popis dostupnih cmdlet modula za rad s Active Directoryom ovako:

Get-Command -Module ActiveDirectory

Različite verzije sustava Windows imaju različit broj dostupnih cmdleta:

  • Windows Server 2008 R2 - 76 cmdleta.
  • Windows Server 2012 - 135 cmdleta
  • Windows Server 2012 R2 / 2016 - 147 cmdleta.

Dakle, sada možete koristiti PowerShell cmdlete za administriranje AD-a. Na našoj web stranici možete se upoznati s korištenjem sljedećih cmdleta iz AD modula za PowerShell: , .

Windows PowerShell moćna je ljuska naredbenog retka i skriptni jezik dizajniran za administraciju sustava. Windows PowerShell izvrstan je alat za upravljanje i automatizaciju administracije Windows operativnog sustava, kao i aplikacija koje rade pod Windowsima.

Bio sam gorljivi obožavatelj vbs skripti. Budući da sam primijetio da je za one zadatke za koje sam prije koristio Delphi, vbs skriptni jezik sasvim prikladan. Uostalom, puno je praktičnije samo otvoriti bilježnicu, ubaciti nekoliko redaka tamo, spremiti datoteku sa željenim nastavkom i pokrenuti skriptu. Za to ne morate ništa instalirati, npr. Delphi koji se također plaća.

Iako vbs nije loš, njegov nasljednik PowerShell ima mnogo širu funkcionalnost.

Imam vbs skriptu koja automatski objavljuje slike na jednom od blogova. Bilo je potrebno poravnati sliku po širini ili visini, ovisno o rezoluciji dodane slike. I tako nisam mogao dobiti rezoluciju slika pomoću vbs skripte, ali to se radi vrlo jednostavno putem PowerShell-a.

Ako Počevši od sustava Windows 7, PowerShell dolazi u paketu sa samim sustavom Windows., tada ga u sustavu Windows XP trebate preuzeti i instalirati - preuzmite PowerShell V2 za Windows XP SP3.

5. verziju Powershell-a možete preuzeti na linku: microsoft.com, također je opisano koju datoteku preuzeti za željeni OS i kako ju instalirati.

Kako dopustiti pokretanje lokalnih PowerShell skripti?

Prema zadanim postavkama, Windows neće dopustiti pokretanje PowerShell skripti zbog sigurnosnih razloga. Morate dopustiti pokretanje lokalnih skripti. Pokrenite naredbu u konzoli (omogućit će pokretanje lokalnih skripti i preuzetih skripti potpisanih pouzdanim certifikatom):

powershell -Command Set-ExecutionPolicy RemoteSigned

U suprotnom, kada pokušate pokrenuti svoju skriptu, vidjet ćete ovaj tekst:

Datoteka C:\ImageSize.ps1 ne može se učitati jer skriptiranje nije dopušteno na ovom sustavu. Upišite "get-help about_signing" za više informacija.
+ CategoryInfo: NotSpecified: (:), ParentContainsErrorRecordException
+ FullyQualifiedErrorId: RuntimeException

Za promjenu ove sigurnosne politike, napišite:

powershell -Command Set-ExecutionPolicy Restricted

Da biste dopustili pokretanje bilo koje skripte bez provjere potpisa, napišite:

powershell -Command Set-ExecutionPolicy Unrestricted

Ako vidite sljedeću poruku tijekom pokretanja skripte:

Sigurnosno upozorenje Pokreni samo skripte kojima vjeruješ. Dok skripte s interneta mogu biti korisne, ove skripte potencijalno mogu naštetiti vašem računalu. Želite li pokrenuti \server\scripts\my.ps1? [D] Ne pokreni [R] Pokreni jednom [S] Obustavi [?] Pomoć (zadano je "D"): d

A ako ga se želite riješiti, tada prilikom pokretanja skripte koristite parametar -ExecutionPolicy Bypass

Powershell -ExecutionPolicy Bypass -file "\\server\scripts\my.ps1"

Kako pokrenuti PowerShell skriptu?

Unesite naredbu u naredbeni redak

Powershell - Datoteka your-script-name.ps1

Gdje je your-script-name.ps1 naziv vaše skripte. PowerShell skript datoteke imaju ekstenziju *.ps1

Pomoć za Windows PowerShell ili pomoć

PowerShell ima različite cmdlete za dobivanje specifične pomoći. Ali najvažniji od njih je: Get-Help

Unesite naredbe u konzolu:

powershell -naredba Get-Help

powershell -naredba Get-Help -?

Dobit ćete i dva različita opisa koji se međusobno nadopunjuju o tome kako koristiti pomoć.

Opcije pomoći su prilično opsežne, s primjerima i detaljnim opisima na ruskom. Stoga ga možete prikazati u različitim formatima.

Na primjer:

  • powershell -naredba Get-Help Get-Help - opća pomoć za Get-Help cmdlet
  • powershell -naredba get-help Get-Help -examples - primjeri kako koristiti get-help cmdlet
  • powershell -naredba get-help Get-Help -detailed - detaljna pomoć za get-help cmdlet
  • powershell -naredba get-help Get-Help -full - najpotpunija pomoć za get-help cmdlet

winintro.ru/windowspowershellhelp.ru/ - pomoć u obliku html knjige

Napomene o Windows Powershell-u:

Operatori usporedbe

  • -eq - Jednako - Jednako
  • -ne - Nije jednako - Nije jednako
  • -ge - Veće ili jednako - Više ili jednako
  • -gt - Veće od - Više
  • -lt - Manje od - Manje
  • -le - Manje od ili jednako - Manje ili jednako
  • -kao - Usporedba zamjenskih znakova - Korištenje zamjenskih znakova za podudaranje s uzorkom
  • -notlike - Usporedba zamjenskih znakova - Koristite zamjenske znakove za podudaranje s uzorkom
  • -match - Usporedba regularnih izraza - Koristite regularne izraze za podudaranje uzorka
  • -notmatch - Usporedba regularnih izraza - Koristite regularne izraze za pronalaženje podudaranja uzorka
  • -replace - Zamijeni operator - Zamjenjuje dio ili cijelu vrijednost lijevo od operatora
  • -contains - Containment operator - Određuje sadrži li vrijednost s lijeve strane operatora vrijednost s desne strane. Rezultat je Booleova vrijednost
  • -notcontains - Operator ograničenja - Određuje da vrijednost s lijeve strane operatora ne sadrži vrijednost s desne strane. Rezultat je Booleova vrijednost

Prema zadanim postavkama, operatori usporedbe nisu osjetljivi na velika i mala slova.
Za usporedbu koja razlikuje velika i mala slova, naredba ima prefiks "c". Na primjer, operator -eq koji razlikuje velika i mala slova mijenja se u "-ceq".
Za eksplicitnu usporedbu koja ne razlikuje velika i mala slova, naredba ima prefiks "i". Primjer: operator -replace koji ne razlikuje velika i mala slova bio bi -ireplace

  • -is - je vrsta
  • -isnot - Nije tip
  • -as - Kao tip, nema pogreške ako konverzija ne uspije

PowerShell logički operatori:

  • -i - Oba uvjeta moraju biti istinita da bi izraz bio istinit
  • -ili - jedan ili oba uvjeta moraju biti istiniti da bi izraz bio istinit
  • -xor - jedan uvjet mora biti istinit, a drugi netočan da bi izraz bio istinit
  • -not - Navedeni uvjeti moraju imati vrijednost false da bi izraz bio istinit
  • ! - Navedeni uvjet mora imati vrijednost false da bi izraz bio istinit

$myVar -je "String" $myVar -eq 123 $myVar -ceq $myVar2 "abcdef" -kao "abc*" "abcdef" -zamijeni "dEf","xyz" $myVar1 -je "String" -i $myVar2 -je "Int" (1 -eq 1) -a -nije (2 -gt 2)

Operacije nizova

#Podijeli niz razmacima: $string = "Testni niz" $string.split(" ") $string.IndexOf(" ") #Potražite prvi razmak u $string # Vraća indeks baziran na nuli prvog pojavljivanja od PS> "abcdeabcde". indexOf("cde") 2 # Vraća poziciju indeksa koja se računa od zadnjeg pojavljivanja navedenog znaka PS> "abcdeabcde".lastIndexOf("c") 7 # Vraća podniz počevši od pozicije 1 PS > "abcdefgh".Substring(1) bcdefgh # Vraća podniz koji počinje na poziciji 1 i dug je 4 znaka PS> "abcdefgh".Substring(1,4) bcde # Umetanje podniza s pozicije 0 PS> "abcdefgh".insert( 0,"X") Xabcdeabcde # Brisanje s pozicije 0 duljine 2 PS> "abcdefgh".remove(0,2) cdeabcde # Svojstvo objekta - duljina niza PS> "abcdefgh".length 8 # Vraća True ako niz sadrži podniz "cde" PS> "abcdefgh" .Contains("cde ") True # Vraća True ako niz počinje podnizom "abc" PS> "abcdefgh".startsWith("abc") True # Vraća True ako niz završava s podniz "fgh" PS> "abcdefgh".endsWith("fgh" ) True # Vraća True ako niz sadrži podniz "cde" PS> $"abcdefgh" -kao "*cde*" True # Vraća niz gdje je " d" je graničnik PS> "abcdefgh" -split "d" abc efgh # Vraća niz spojen od dva ":" - graničnik PS> "abcdefgh", "xyz"-join ";" abcdefgh;xyz # Vraća niz gdje će "abc" biti zamijenjen sa "XYZ" PS> "abcdefgh".replace("abc","XYZ") XYZdefgh # Vraća niz gdje su znakovi pretvoreni u VELIKA SLOVA PS> "abcdefgh" .ToUpper( ) ABCDEFGH # Vraća niz gdje su znakovi pretvoreni u mala slova PS> "ABCDEFGH".ToLower() abcdefgh

Predefinirane varijable

$dom– korisnički imenik
$NULL– prazan
$istina– istina
$false– loža
$DebugPreference– “Continue” prikazuje informacije o otklanjanju pogrešaka, “SilentlyContinue” ne prikazuje informacije o otklanjanju pogrešaka. Pogledajte naredbu Write-Debug

Rad s datotekama

$string | Out-File $file -Append #Dodaj $string s novim retkom u datoteku $file $string = get-content -Path $file #Dohvati sadržaj datoteke u $string $file $jokes = ::ReadAllText($ datoteka) #čitaj cijelu datoteku u jednom retku Test-Path "C:\test.txt" #Provjeri postojanje datoteke

Pronađite sve datoteke s određenom ekstenzijom u direktoriju i poddirektoriju.
Zatim kopirajte te datoteke u drugi direktorij.

$flist = get-childitem e:\doc\* -include *.pdf -recurse $flist | ForEach-Object($_.CopyTo("e:\doc\all_pdf\" + $_.PSChildName)) ls d:\ | ?($_.psiscontainer) | odaberite puni naziv #Prikaži samo direktorije ls d:\ | ?(!$_.psiscontainer) | odaberite puni naziv #Prikaži samo datoteke $local = Get-Location #Trenutni direktorij $local.Path # Radni direktorij $local.Drive.Root # Root $local.Drive.Name # Slovo pogona $local.Drive.Used # Disk korišten $local .Drive.Free # Slobodno na disku

Prikaz punih imena datoteka na disku D: koja su se promijenila u razdoblju od 1. lipnja 2014. do 20. rujna 2014.:

Ls d:\ -rekurzija | ?(!$_.psiscontainer) | odaberite puno ime,LastWriteTime | Where-Object ( $_.LastWriteTime -ge "01/06/2014" -i $_.LastWriteTime -le "09/20/2014")

Prikaz teksta na ekranu

# tekst na koji treba obratiti pozornost. Označeno žutom bojom. Write-Warning("Tekst koji zahtijeva pažnju") # Samo prikazuje tekst Write-Host("Samo tekst") #omogućene informacije o otklanjanju pogrešaka $DebugPreference = "Nastavi" # prikazane informacije o otklanjanju pogrešaka Write-Debug "Ne mogu otvoriti datoteku." # onemogućen izlaz za otklanjanje pogrešaka $DebugPreference = "SilentlyContinue"

Stanite nekoliko sekundi

Start-Sleep -s 15 # Stanka od 15 sekundi

Pauzirajte konzolu dok ne pritisnete Enter

Read-Host "Pritisnite Enter"

Rad s procesima

#Zadatak: ubiti sve procese pod nazivom Notepad # Metoda #1 get-process Notepad | Stop-Process # Metoda #2 (Radi samo s jednim procesom) $plist = get-process Notepad $plist.Kill() # Metoda #3 (isto kao 2, ali svi procesi) $plist = get-process Notepad $ plist | ForEach-Object ($_.Kill()) #Get procesi i njihovi početni datumi: Get-Process| Format-Naziv tablice,Vrijeme početka -Automatska veličina

Povećanje

$i++ - u trenutku pozivanja i ima staru vrijednost, ali se nakon toga povećava za 1++

++$i - u trenutku poziva i se povećava za 1

Nizovi

$array = 17,15,160 #kreirao niz od tri elementa $array -sadrži $element #sadrži li niz element $file1 #0. element niza $file1.count #veličina niza #uklanjanje elementa "asdf" iz niz $niz = @ ("adsf","adf","erge") $niz = $niz |? ($_ -ne "adf") #dobi samo jedinstvene elemente niza $a = @(1,2,3,4,5,5,6,7,8,9,0,0) $a = $a | select -uniq #index prvog pojavljivanja elementa u nizu $array.indexOf("cde")

If Elseif Else konstrukcija

if ($i -eq 0) ( Write-Host("i je nula") ) ElseIf ($i -eq 1) ( Write-Host("i je jedan") ) Else ( Write-Host("i nije jednako nula ili jedan")

Petlja za svaki

$services = Get-Service ForEach ($service u $services) ( $service.Stop() ) 65 #pretvori ASCII kod u znak "A" #pretvori znak u ASCII kod "Hello" #pretvori niz u ASCII kodove

Čekamo da se pritisne bilo koja tipka:

$HOST.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown") | OUT-NULL $HOST.UI.RawUI.Flushinputbuffer() $host.ui.RawUI.WindowTitle = "elimS Naslov prozora" #задаем заголовок окна !}

Vrste podataka u PowerShell-u

Najčešći tipovi:

Niz Unicode znakova fiksne duljine Unicode 16-bitni znak 8-bitni znak bez predznaka 32-bitni cijeli broj s predznakom 64-bitni cijeli broj s predznakom Boolean True/False vrijednost 128-bitna decimalna vrijednost Jednostruka preciznost 32-bitni broj s pomičnim zarezom Double -precizan 64-bitni broj s pomičnim zarezom Datum i vrijeme Xml objekt Niz vrijednosti Objekt Hashtable

Tu su i ugrađene konstante: $true,$false, $null

Unicode: Za kodiranje Unicode znaka u nizu PowerShell, dodajte prefiks Unicode s 0x i pretvorite ga u System.Char:

PS > 0x263a ☺

Pretvorba tipa podataka

Da biste forsirali pretvorbu u određeni tip podataka, dodajte vrijednost ili varijablu tipu u uglate zagrade, to je poznato kao Cast operater i forsira odabrani tip podataka:

PS C:\> "0064" 64 PS C:\> $false 0 PS C:\> ("0x" + "FF") 255

Testiranje tipova podataka

PS C:\>32 -je
Istina PS C:\> $true -is
Pravi

Funkcije u Powershell-u

funkcija elimS ( #funkcija koja ima nekoliko ulaznih parametara param($string = "default value", $integer = 7) #ulazni parametri write-host "string = " $string " | integer = " $integer ) elimS #poziv funkcije bez definicije parametara, parametri će uzeti zadanu vrijednost $string = "test string" $integer = 911 elimS $string $integer #ovo je kako ispravno pozvati funkciju - parametre odvajamo razmakom elimS -integer $integer -string $string #ovo je također točno $global:var1 = "test" je globalna varijabla, tako da možete proslijediti vrijednost varijabli iz funkcija.

Više o tome kako proslijediti više parametara funkciji:

Odmor

get-host #show powershell verzija Clear-RecycleBin c: -Force #emptying the recycle bin Compress-Archive -Path C:\test\* -DestinationPath C:\archive\test1.zip #archive mapu Expand-Archive -Path C :\temp \test1.zip "C:\test\Nova mapa\" #otpakirajte arhivu (Get-CimInstance Win32_operatingSystem).lastbootuptime #show vrijeme pokretanja sustava write-host $sleep_array.GetType().FullName #show variable type switch ($a) ( #case - višestruko ako 1 ($b = $b+10 ) 2 ($b = $b+20 ) 3 ($b = $b+30 ) 4 ($b = $b+40 ) zadano ($b = $b+50) ) Get-Content -Path "C:\scripts\test.txt" -Pričekajte #analog repa u linuxu

Powershell cmdleti

Sortiraj-Objekt- sortira objekte uzlaznim ili silaznim redoslijedom na temelju vrijednosti svojstava objekata. Možete postaviti jedno svojstvo ili više svojstava (razvrstavanje po više ključeva), a možete odabrati hoćete li sortirati prema velikim ili malim slovima. Također možete učiniti da cmdlet Sort-Object prikazuje samo objekte s jedinstvenim vrijednostima za određeno svojstvo.

Kopiraj-stavku- kopira element s jedne lokacije u imenskom prostoru na drugu. Cmdlet Copy-Item ne briše kopirane stavke. Vrste elemenata koje cmdlet može kopirati određuju dostupnost pružatelja Windows PowerShell. Na primjer, kada koristite cmdlet s pružateljem FileSystem, datoteke i mape se kopiraju, a kada koristite pružatelja Registry, ključevi registra i unosi se kopiraju.

Premjesti-stavku- Premješta element, uključujući njegova svojstva, sadržaj i djecu, s jedne lokacije na drugu. Obje navedene lokacije mora podržavati isti pružatelj usluga. Na primjer, možete premjestiti datoteku ili poddirektorij iz jednog direktorija u drugi ili možete premjestiti potključ registra iz jednog ključa u drugi. Kada premjestite element, on se briše na izvornom mjestu i stvara na novom.

Ukloni-stavku- briše jedan ili više elemenata. Ovaj cmdlet podržavaju mnogi dobavljači, tako da može brisati razne vrste stavki, uključujući datoteke, direktorije, ključeve registra, varijable, pseudonime i funkcije.

Get-ChildItem- Prima elemente sa zadanih lokacija. Ako je element spremnik, ovaj cmdlet dohvaća elemente iz spremnika, koji se nazivaju podređeni elementi. Možete koristiti opciju Recurse za dohvaćanje stavki iz svih podređenih spremnika. Lokacija može biti lokacija datotečnog sustava, kao što je direktorij, ili lokacija koju pruža drugi pružatelj, kao što je košnica registra ili spremište certifikata.

Powershell cmdlet opcije

-ErrorAction- parametar je prisutan u svim cmdletima; omogućuje vam da navedete radnju koja će se izvršiti kada dođe do pogreške:

  • Nastavi - prikazati poruku o pogrešci i nastaviti s izvođenjem
  • SilentlyContinue - zanemarite pogrešku i nastavite
  • Stop - prekinuti izvršenje pri prvoj pogrešci
  • Upit - ako se pojavi pogreška, prikaži zahtjev što učiniti sljedeće

Primjer: Copy-Item "d:\test1\klbackup*" "d:\test2\" -ErrorAction stop

-Što ako- prikazuje poruku koja opisuje rezultat naredbe bez njenog stvarnog izvršavanja. Prisutan u svim cmdletima.

get-help about_CommonParameters- opis parametara koji se mogu koristiti s bilo kojim cmdlet-om.

SSH putem Powershell-a

Primjer kako možete raditi putem SSH-a:

#instalirajte SSH modul, jednom Find-Module Posh-SSH | Install-Module #Create SSH session: Import-Module Posh-SSH $ComputerName = "1.2.3.4" $UserName = "ubuntu" $KeyFile = "C:\SSH\key.pem" $nopasswd = new-object System. Sigurnost .SecureString $Crendtial = New-Object System.Management.Automation.PSCredential ($UserName, $nopasswd) $SSHSession = New-SSHSession -ComputerName $ComputerName -Credential $Crendtial -KeyFile $KeyFile #Create a shell: $SSH = $ SSHSession | New-SSHShellStream # šalje naredbu $SSH.WriteLine("ifconfig") # čita odgovor $SSH.read() # zatvara sesiju: ​​$sshSession | Ukloni-SSHSession

Timovi:

  • Get-SSHTrustedHost - pogledajte pouzdane hostove
  • Get-SSHSession - pogledajte popis otvorenih sesija
  • Remove-SSHSession - zatvori sesiju

Bilješka. Ovaj modul možete koristiti bez instaliranja WMF 5.0. Pretpregledna verzija modula za PS 4.0 i 3.0 dostupna je zasebno - ožujak 2016., a novije potražite u centru za preuzimanje za PackageManagement PowerShell Modules Preview.

Instaliranje programa

Ovaj primjer instalira četiri programa i cijeli set Sysinternals uslužnih programa iz repozitorija Chocolatey. Prve tri naredbe izvršavaju se jednom, a promjena politike mora biti potvrđena. Četvrta naredba tiho instalira navedene programe, a peta jednostavno štedi vrijeme.

#Dopusti instalaciju potpisanih paketa s interneta Set-ExecutionPolicy RemoteSigned #Instaliraj Chocolatey providera Get-PackageProvider –Name Chocolatey -ForceBootstrap #Make Chocolatey trusted Set-PackageSource -Name Chocolatey -Trusted #Install programe Install-Package NotepadPlusPlus, vlc, firefox, filezilla, sysinternals -Verbose -Force -ProviderName chocolatey #Dodaj put do izvršnih datoteka (sysinternals) u PATH setx PATH "$env:path;C:\Chocolatey\bin" -m

Dobavljač preuzima paket u C:\Chocolatey\lib, koji se temelji na skripti chocolateyInstall.ps1. Preuzima instalacijski program sa službene web stranice u mapu %temp%\Chocolatey i pokreće ga u načinu tihe instalacije. Najjednostavniji primjer je Notepad++.

Install-ChocolateyPackage "notepadplusplus" "exe" "/S" "https://notepad-plus-plus.org/repository/6.x/6.9/npp.6.9.Installer.exe"

Programi za pretraživanje

Postoji mnogo programa u spremištima, svi najpopularniji su definitivno tamo.

Find-Package "*zip*","*commander*" -ProviderName Chocolatey

Vrste instalatera i tipke tihe instalacije

  • Stranica za automatsku instalaciju sustava Windows i forum za automatsku instalaciju programa
  • Instaliranje Windows ažuriranja putem Powershell-a

    • Preuzmite modul Windows Update PowerShell s web stranice Microsofta.
    • Raspakirajte arhivu u mapu %WINDIR%\System32\WindowsPowerShell\v1.0\Modules
    • Ako još niste dopustili pokretanje lokalnih skripti, učinimo to: "Set-ExecutionPolicy RemoteSigned".
      • Možete provjeriti pomoću naredbe "Get-ExecutionPolicy": trebala bi biti "RemoteSigned" umjesto "Restricted"
    • Preuzeti modul uvozimo naredbom: "Import-Module PSWindowsUpdate"
    • Spreman. Sada možete koristiti naredbe:
      • Pogledajte popis dostupnih ažuriranja: Get-WUInstall -ListOnly
      • Instalirajte sva ažuriranja bez traženja potvrde: Get-WUInstall -AcceptAll
      • Instalirajte sva ažuriranja bez traženja potvrde i odgodite ponovno pokretanje: Get-WUInstall -AcceptAll -IgnoreReboot
      • Instalirajte određena ažuriranja znajući njihov broj:"Get-WUInstall -KBArticleID KB3066441, KB3078676 -AcceptAll -IgnoreReboot" - sada ne morate ići na web stranicu Microsofta i preuzimati ih ručno
      • Detaljna pomoć o modulu: get-help Get-WUInstal -detaljno
      • Pogledajte popis dostupnih ažuriranja isključujući kategoriju "Jezični paketi", "Skype" naslove i ažurirajte KB3012973: Get-WUInstall -NotCategory "Jezični paketi" -NotTitle Skype -NotKBArticleID KB3012973 -ListOnly
      • Instalirajte ažuriranja isključujući kategoriju "Jezični paketi", zaglavlja "Skype" i ažurirajte KB3012973: Get-WUInstall -NotCategory "Jezični paketi" -NotTitle Skype -NotKBArticleID KB3012973 -AcceptAll -IgnoreReboot

    0
    Primjenjivo na:
    Office 365 za profesionalce i mala poduzeća, Office 365 za poduzeća, Live@edu
    Windows XP, Windows Vista, Windows Server 2003, Windows 7 i Windows Server 2008

    Prije nego počnete koristiti Windows PowerShell, trebali biste provjeriti jesu li ispravne verzije Windows PowerShell i Windows Remote Management (WinRM) instalirane i konfigurirane na vašem računalu. Morate koristiti Windows Management Framework, koji uključuje ispravne verzije Windows PowerShell v2 i WinRM 2.0.

    Ako vaše računalo ima Windows 7 ili Windows Server 2008 R2, ne morate ništa instalirati. Windows Management Framework je već instaliran.

    Možete preuzeti i instalirati Windows Management Framework ako vaše računalo radi na jednom od sljedećih operativnih sustava:

      Windows Vista SP1 ili SP2;

      Windows Server 2008 SP1 ili SP2;

      Windows Server 2003 SP2;

      Windows XP sa servisnim paketom 3 (SP3).

    Započnimo:

    1. Uklonite prethodne verzije Windows PowerShell sa svog računala

    Prije instaliranja Windows Management Frameworka, morate deinstalirati sve postojeće verzije Windows PowerShell.

    1.1 Uklanjanje Windows PowerShell iz sustava Windows Vista

      U grupi Programi na upravljačkoj ploči otvorite Programe i značajke i deinstalirajte sve instance Windows PowerShell koje se nalaze na popisu instaliranih programa. Na primjer, CTP verzija Windows PowerShell v2 može se pojaviti kao "Windows PowerShell(TM) V2".

      U odjeljku Zadaci odaberite Pregled instaliranih ažuriranja i uklonite sve instance Windows PowerShell koje se nalaze na popisu instaliranih ažuriranja. Na primjer, Windows PowerShell V1 može se pojaviti kao Windows ažuriranje s jednim od sljedećih brojeva članaka u Microsoftovoj bazi znanja:

    1.2 Uklanjanje Windows PowerShell iz Windows Servera 2008

      Pokrenite Server Manager i otvorite odjeljak Components.

      1. Odaberite "Ukloni značajke".

        Odaberite Windows PowerShell i slijedite upute za uklanjanje.

      Na upravljačkoj ploči, pod programima, otvorite programe i značajke i deinstalirajte sve instance Windows PowerShell koje se nalaze na popisu instaliranih programa.

      U grupi "Zadaci" odaberite stavku "Prikaz instaliranih ažuriranja". Uklonite sve instance Windows PowerShell koje se nalaze na popisu instaliranih ažuriranja.

    1.3 Uklanjanje Windows PowerShell iz Windows Server 2003 ili Windows XP

      Otvorite Dodaj ili ukloni programe na upravljačkoj ploči i uklonite sve instance Windows PowerShell koje se nalaze na popisu instaliranih programa.

      U odjeljku Dodaj ili ukloni programe odaberite Prikaži ažuriranja. Uklonite sve instance Windows PowerShell koje se nalaze na popisu instaliranih ažuriranja. Na primjer, Windows PowerShell V1 može se pojaviti kao Windows ažuriranje sa sljedećim brojem članka u Microsoftovoj bazi znanja: KB926139.

    2. Uklanjanje prethodnih verzija WinRM-a s vašeg računala

    Prije instaliranja Windows Management Frameworka, morate deinstalirati sve postojeće verzije WinRM-a.

    2.1 Uklanjanje WinRM-a iz sustava Windows Vista ili Windows Server 2008

      U grupi Programi na upravljačkoj ploči otvorite Programe i značajke i deinstalirajte sve instance Windows Remote Control koje se nalaze na popisu instaliranih programa.

      U grupi "Zadaci" odaberite stavku "Prikaz instaliranih ažuriranja". Uklonite sve instance usluge Windows Remote Management koje se nalaze na popisu instaliranih ažuriranja. Na primjer, CTP verzija WinRM 2.0 može se pojaviti kao "WindowsRemoteManagement" s jednim od sljedećih brojeva članaka u Microsoftovoj bazi znanja:

    2.2 Uklanjanje Windows PowerShell iz Windows Server 2003 ili Windows XP

      Otvorite Dodaj ili ukloni programe na upravljačkoj ploči i uklonite sve instance Windows Remote Control koje se nalaze na popisu instaliranih programa.

      U odjeljku Dodaj ili ukloni programe odaberite Prikaži ažuriranja. Uklonite sve instance usluge Windows Remote Management koje se nalaze na popisu instaliranih ažuriranja. Na primjer, WinRM se može pojaviti kao Windows ažuriranje sa sljedećim brojem članka u Microsoftovoj bazi znanja: KB936059.

    3. Instalirajte Windows Management Framework

      Preuzmite i instalirajte Windows Management Framework. Odaberite paket koji sadrži Windows PowerShell v2 i WinRM 2.0 koji odgovara vašem operativnom sustavu, arhitekturi sustava i jeziku.

      Nakon instaliranja WinRM-a i Windows PowerShell-a, konfigurirajte softver tako da ispravno radi kao što je opisano u sljedećim koracima.

    Bilješka

    4. Provjerite mogu li se skripte izvoditi u Windows PowerShell

      Redom odaberite "Start", "Svi programi", "Dodaci", Windows PowerShell.

      Da biste otvorili Windows PowerShell, učinite jedno od sljedećeg:

      • Ako koristite Windows Vista, Windows 7 ili Windows Server 2008 R2, desnom tipkom miša kliknite Windows PowerShell i odaberite Pokreni kao administrator. Kada se pojavi upit Kontrole korisničkog računa koji od vas traži da nastavite, kliknite Nastavi.

        Ako koristite Windows XP ili Windows Server 2003, kliknite Windows PowerShell.

      Pokrenite sljedeću naredbu:

      Get-ExecutionPolicy

      Ako vraćena vrijednost nije RemoteSigned, morate promijeniti vrijednost u RemoteSigned.

      Bilješka

      Ako je pravilo izvršavanja skripti postavljeno na RemoteSigned, mogu se pokrenuti samo skripte koje su stvorene na računalu korisnika ili koje je potpisao pouzdani izvor.

    Priprema za izvođenje skripti u Windows PowerShell

    U Windows PowerShell sesiji otvorenoj kao administrator, pokrenite sljedeću naredbu:

    Set-ExecutionPolicy RemoteSigned

    5. Provjera ima li WinRM dopuštenje za povezivanje s Windows PowerShell

      Redom odaberite "Start", "Svi programi", "Dodaci".

      Učinite jedno od sljedećeg da biste otvorili naredbeni redak:

      • Ako koristite Windows Vista, Windows 7 ili Windows Server 2008 R2, kliknite desnom tipkom miša na Command Prompt i odaberite Run as Administrator. Kada se pojavi upit Kontrole korisničkog računa koji od vas traži da nastavite, kliknite Nastavi.

        Ako koristite Windows XP ili Windows Server 2003, odaberite Command Prompt.

      U naredbenom retku pokrenite sljedeću naredbu:

      winrm dobiti winrm/config/client/auth

      Bilješka

      Ako je usluga WinRM već pokrenuta, ne morate je pokretati. Možete provjeriti status usluge WinRM pokretanjem naredbe sc query winrm.

    U rezultatima potražite vrijednost Basic = . Ako je navedena vrijednost Basic = false, mora se promijeniti u Basic = true.

    Bilješka

      Ako je usluga WinRM pokrenuta i ne morate mijenjati osnovnu vrijednost, pokrenite net stop winrm da zaustavite uslugu WinRM.

    Omogućivanje podrške za osnovnu provjeru autentičnosti u WinRM-u

      U prozoru naredbenog retka otvorenog kao administrator pokrenite sljedeće naredbe: Vrijednost u vitičastim zagradama ( ) razlikuje velika i mala slova:

      winrm set winrm/config/client/auth @(Basic="true")

      Provjerite Basic=true u izlazu naredbe.

      Bilješka

      Ako je usluga WinRM pokrenuta, pokrenite net stop winrm da je zaustavite.

    Sljedeća akcija.

    Zdravo. =)
    Još jedan odvratan članak o administraciji Windows Servera posvećen je početnoj pripremi OS-a za korištenje. Razmažen činjenicom da je u osnovnoj verziji Windows Servera s GUI-jem (grafičko korisničko sučelje), kao iu Windows Server 2012 Core i novijim, Powershell već instaliran, bio sam vrlo zbunjen činjenicom da u Windows Server 2008R2 Core postoji nema mirisa. Jer Postavljanje nije bilo baš očito i morao sam surfati Googleom i technetom, odlučio sam zabilježiti kratku bilješku za budućnost.

    Dakle, prvo ćemo dobiti barem PowerShell 2.0 na raspolaganje (zapravo, možete preskočiti ovaj korak radeći sve što je dolje opisano u cmd-u, ali ja sam počeo s ovim). To se može učiniti na dva načina: pokretanjem uslužnog programa sconfig.cmd na naredbenom retku ili putem DISM-a ( Servisiranje i upravljanje slikom implementacije) na istom mjestu. Prvi nam nudi pseudografičko sučelje, gdje ćemo pod točkom 4 pronaći mogućnost instaliranja PS 2.0.

    To se radi putem DISM-a na sljedeći način:
    dism.exe /online /enable-feature:MicrosoftWindowsPowerShell

    Nakon što smo instalirali PS, restartali i dobili nešto adekvatniji alat na raspolaganje, pokušat ćemo ga ažurirati na trenutnu verziju. U vrijeme pisanja, to je verzija 4.0 ili pretpregledna verzija 5.0. Za mene je minimalna upotrebljiva verzija verzija 3.0, koja već ima mnogo cmdleta za upravljanje ulogama poslužitelja i resursima koji nedostaju u verziji 2. Windows PowerShell 3.0 zahtijeva .Net Framework 4.0 ili noviji na sustavu.
    Ako sada pokušamo instalirati .Net 4.0, saznat ćemo da nam za to treba već instaliran .Net 2.0, koji iz nekog razloga nedostaje u Server Core izdanju. Smiješno je, ali iz navike, nakon što smo preuzeli instalacijski program i pokrenuli ga, dobit ćemo odbijanje instalacije i obavijest o potrebi korištenja dism.exe. >_< OK, dism, так dism. Уставливается по аналогии с PS:
    dism.exe /online /enable-feature:NetFx2-ServerCore
    dism.exe /online /enable-feature:NetFx2-ServerCore-WOW64

    Sljedeći korak je ažuriranje .Net Frameworka na najnoviju verziju. Ako želite koristiti Powershell 3.0, instalirajte .Net 4.0, ali ako želite najnoviju verziju, trebat će vam .Net 4.5.1 ili noviji. Izbor je vaš, instalacija je iznimno jednostavna. Jedini problem bi mogao biti u primanju instalacijskog paketa - povezao sam mrežni disk na poslužitelj na koji sam učitao sve instalacijske datoteke; možete koristiti bilo koji medij za pohranu koji vam odgovara.

    Dakle, pripremili smo bazu za instalaciju PS verzije 3.0 i novije. Sljedeći korak je preuzimanje programa za instalaciju Windows Management Framework i njegovo instaliranje. Preuzmite i pokrenite KB2819745 arhitekture koja nam je potrebna:

    Tradicionalno, nakon instalacije trebat će nam ponovno podizanje sustava; nakon što ga završimo, na raspolaganju ćemo imati PowerShell 4.0.

    Usput, da biste mogli koristiti cmdlet Add-WindowsFeature (preimenovan u Install-WindowsFeature u sustavu Windows Server 2012) za konfiguriranje uloga poslužitelja, morat ćete instalirati komponente Upravitelja poslužitelja kroz isti DISM.EXE. Ovako izgleda:
    dism.exe /online /enable-feature:ServerManager-PSH-Cmdlet s
    Općenito, jako sam razmažen najnovijim verzijama PS-a, jer... Počeo sam raditi na tome nakon izdavanja treće verzije, ali kako se pokazalo, dism.exe možete koristiti samo za instaliranje uloga. A ako ne znate naziv značajke koja vam je potrebna, uvijek možete pogledati sve dostupne opcije i njihov status putem parametra /get-features. Ali po mom mišljenju, Get-WindowsFeature je mnogo informativniji. =)
    dism.exe /online /get-features u odnosu na Get-WindowsFeature

    Već je prošlo neko vrijeme od lansiranja konačnog izdanja najnovijeg operativnog sustava iz Microsofta, a ne samo entuzijasti koji testiraju srednje verzije, već i oni korisnici koji su preuzeli dugo očekivano ažuriranje već su se upoznali s njim. Je li novi sustav dobar ili nije? Je li ovo najnoviji inovativni proizvod ili samo „osmica“ koja je trebala izaći svojevremeno? To su pitanja na koja se ni u kojem slučaju ne može dati definitivan odgovor. Osim očitih inovacija, koje uključuju novi izbornik Start, preglednik Microsoft Edge, kompatibilnost s Xboxom, pretraživanje i pregled zadataka integriran s Cortanom, tu su i brojne novosti za koje ne zna svaki korisnik Windows 10.

    A jedna od tih inovacija je mogućnost instaliranja softverskih proizvoda izravno pomoću ljuske Windows PowerShell, o čemu će biti riječi kasnije u ovom članku. Unatoč činjenici da se ova funkcionalnost pojavila još u travnju 2014. zajedno s izdanjem Windows Management Framework 5.0 Preview, mogla je postati izvorna tek s konačnim izdanjem „desetke“. Dakle, da vidimo koji je modul odgovoran za ovu funkcionalnost i kako možete instalirati softverske proizvode bez preuzimanja instalacijskih datoteka.

    Windows PowerShell OneGet modul

    S izdanjem Windows Management Framework 5.0 Preview, Windows PowerShell sada ima nekoliko novih značajki dizajniranih da olakšaju upravljanje računalima. Ove značajke uključuju dvije zanimljive tehnologije, naime: Windows PowerShell Desired State Configuration i Certified for Windows Network Switches.

    U slučaju tehnologije Certified for Windows Network Switches, dodan je niz Windows PowerShell cmdleta koji su odgovorni za upravljanje mrežnim prekidačima certificiranim za Windows. To jest, postoji 19 novih cmdleta koje možete pronaći pokretanjem naredbe “Get-Command *-NetworkSwitch*” u PowerShell-u. Budući da je tehnologija prilično ozbiljna i zaslužuje posebnu pozornost, u ovom ću se članku ograničiti samo na kratak opis i neću detaljnije razmatrati ovu tehnologiju.

    Ali trebali bismo se detaljnije zadržati na drugoj tehnologiji. Ako instalirate Windows Management Framework 5 ili operativni sustav Windows 10, možete koristiti alat koji znatno olakšava pronalaženje i instaliranje softvera na vaša računala. OneGet je takav alat. OneGet je agregator za upravljanje paketima, odnosno modul koji koristi posebne repozitorije za pružanje jedinstvenog sučelja za otkrivanje, instalaciju i inventar softvera. Drugim riječima, ova tehnologija s jedne strane pruža skup cmdleta koji krajnjem korisniku omogućuju upravljanje instalacijskim paketima (o čemu ćemo malo niže), as druge strane pruža sučelje za pisanje dobavljača paketi.

    Prije nego počnemo razumjeti sam modul, trebali biste obratiti pozornost na nekoliko definicija koje su usko povezane s ovom tehnologijom, a to su:

    • Plastična vrećica. Ukratko, paket je program koji se kompilira i instalira iz određenog izvora pomoću bilo kojeg dostupnog sustava za upravljanje paketima. Tipično, paket pruža kompilirani kod, s dodatnim meta informacijama, koje mogu uključivati ​​opis paketa, njegovu verziju ili "ovisnosti". Sustav za upravljanje paketima, na primjer, za automatsko ažuriranje softverskog proizvoda na novu verziju kako bi se osiguralo instaliranje svih ovisnosti paketa, mora obraditi takve meta informacije i, ako je potrebno, mora automatski instalirati sve pakete koji nedostaju;
    • Spremište. Prema Wikipediji, repozitoriji su mjesta gdje se podaci pohranjuju i održavaju. Najčešće se podaci u repozitoriju pohranjuju u obliku datoteka koje su dostupne za daljnju distribuciju putem mreže. Repozitorije su izvorno koristili Linux sustavi kako bi omogućili instaliranje paketa potrebnih za pokretanje sustava s drugih lokacija. Većina repozitorija je besplatna, ali neke tvrtke daju pristup vlastitim repozitorijima uz plaćenu pretplatu. O OneGet spremištima ćemo govoriti malo niže;
    • Upravitelj paketa. To je skup softverskih alata odgovornih za automatizaciju procesa instaliranja, ažuriranja, konfiguriranja i deinstaliranja softverskih paketa. Paketi obično uključuju bazu podataka koja navodi softverske preduvjete i ovisnosti, kao i informacije o verziji proizvoda kako bi se spriječilo korištenje pokvarenog softvera. Upravitelji paketa uključuju Linux apt-get ili NuGet, koji su se kasnije pojavili na Windows sustavima. Zauzvrat, OnetGet je logično proširenje NuGet-a, koji radi kao agregator za sve dostupne upravitelje paketa, koji se nazivaju pružateljima.

    Microsoft u početku ograničava upotrebu većine dostupnih pružatelja pružanjem osnovnog skupa koji vam omogućuje otkrivanje i instaliranje dodatnih pružatelja za upravljanje vašim softverom. Među osnovnim dobavljačima su:

    • Bootstrap– dobavljač koji vam omogućuje otkrivanje drugih dobavljača;
    • MSI– pružatelj dizajniran za obradu MSI datoteka;
    • M.S.U.– zauzvrat, dobavljač odgovoran za obradu Microsoftovih ažuriranih datoteka;
    • ARP(Add/Remove programs) – dobavljač odgovoran za inventar podataka o bilo kojem softverskom proizvodu koji je registriran u komponenti sustava „Ukloni ili promijeni program“;
    • PowerShellGet– Davatelj koji vam omogućuje upravljanje raznim PowerShell modulima.

    Kompletan popis OneGet pružatelja usluga s njihovim kratkim opisima možete pronaći na sljedećoj poveznici.

    Sam modul OneGet uključuje 10 Windows PowerShell cmdleta, od kojih će o većini biti riječi u sljedećem odjeljku ovog članka. Ovi cmdleti uključuju:

    • Find-Package – traženje paketa;
    • Get-Package – vraća popis svih paketa instaliranih na računalu;
    • Get-PackageProvider – vraća popis pružatelja koji su povezani s OneGetom na ovom računalu;
    • Get-PackageSource - Vraća popis izvora paketa koji su registrirani za određenog pružatelja paketa;
    • Install-Package – omogućuje vam instalaciju jednog ili više softverskih proizvoda;
    • Register-PackageSource – dodavanje izvora paketa za navedenog pružatelja paketa;
    • Save-Package – omogućuje vam spremanje paketa na lokalno računalo bez naknadne instalacije;
    • Set-PackageSource – promijenite izvor paketa za navedenog pružatelja paketa;
    • Uninstall-Package – uklanjanje jednog ili više programskih paketa;
    • Unregister-PackageSource – uklanja registrirani izvor paketa.
      • Instaliranje softvera pomoću OneGet-a

        Sada je došlo vrijeme za sam proces instalacije softvera. Zatim ćete vidjeti kako možete instalirati dobavljača paketa, pronaći potreban softver, instalirati ga, te kako možete ukloniti nepotrebnu aplikaciju i preuzeti instalacijski paket softverskog proizvoda na svoje računalo. Krenimo redom.

        Instalacija dobavljača paketa Chocolatey

    1. Otvorite Windows PowerShell i pokrenite naredbu za prikaz popisa izvora paketa koji su registrirani s OneGet na vašem lokalnom računalu Get-PackageSource. Imajte na umu da ako u naredbi navedete određenog dobavljača paketa, Get-PackageSource cmdlet će vam pokazati samo izvore koji su povezani s dobavljačem kojeg ste naveli. Inače, naredba vraća sve izvore paketa koji su registrirani s OneGet-om. Budući da moramo vidjeti izvore paketa za sve pružatelje, naredba će se izvršiti bez dodatnih parametara. Imajte na umu da u ovoj fazi imate dodatnog dobavljača paketa koji će se koristiti za instaliranje softverskih proizvoda koji još nisu instalirani. Rezultat naredbe možete vidjeti na sljedećoj slici:

    2. Kao što možete vidjeti na prethodnoj slici, Chocolatey provider nije instaliran na našem lokalnom računalu. Stoga ovo treba ispraviti. Imajte na umu da za dodavanje pružatelja paketa PowerShell ExecutionPolicy mora biti postavljen na Neograničen. U protivnom nećete moći dodati dobavljača. Dopustite mi da vas podsjetim da cmdlet Get-ExecutionPolicy Omogućuje vam prikaz pravila izvršavanja za trenutnu sesiju. Politika izvršavanja dio je sigurnosne politike Windows PowerShell koja određuje mogu li se učitati konfiguracijske datoteke i izvršiti skripte te koje skripte zahtijevaju digitalni potpis za pokretanje. Zadana vrijednost je " Ograničen"(ne učitava konfiguracijske datoteke i ne izvršava skripte), pa ako niste promijenili vrijednost politike izvršavanja, pokrenite naredbu Set-Executionpolicy Unrestricted. Budući da je zadani opseg pravila izvršavanja LocalMachine, tako da se postavke pravila primjenjuju samo na trenutnog korisnika, također možete dodati parametar naredbi koju primjenjujete – Opseg sa značenjem Trenutni korisnik. Izlaz ove dvije naredbe može se vidjeti na sljedećoj ilustraciji:

    3. U ovom trenutku možemo vidjeti popis dobavljača koji su registrirani na OneGet na trenutnom računalu. Da biste to učinili, možete koristiti cmdlet Get-PackageProvider. Ovaj cmdlet, kao što sam malo prije spomenuo, vraća popis pružatelja paketa koji su već povezani s OneGetom. Po izboru možete filtrirati rezultate na temelju svih ili dijela imena dobavljača. Na primjer, da vidite koji su davatelji trenutno povezani, trebali biste pokrenuti cmdlet Get-PackageProvider bez ikakvih dodatnih parametara. Kao što možete vidjeti na sljedećoj ilustraciji, u početku sam imao 4 od ovih pružatelja povezanih na svoje računalo, o čemu sam vam već danas govorio. Sada da biste instalirali Chocolatey provider na svoje računalo morate pokrenuti naredbu Get-PackageProvider –Name Chocolatey –ForceBootstrap, gdje je parametar –ForceBootstrap odgovoran za automatsku instalaciju davatelja. Imajte na umu da obično, kada instalirate Chocolatey provider, NuGet provider također mora biti instaliran. Kao što možete vidjeti na sljedećoj ilustraciji, nakon ponovne upotrebe cmdleta Get-PackageProvider, dobavljač kojeg instaliramo već bi se trebao pojaviti na popisu:

    Sada možemo generirati potpuni popis svih paketa dostupnih u pružateljima usluga i proslijediti ga u cmdlet Izvoz-CliXML stvoriti XML reprezentaciju objekata i spremiti ih u XML datoteku. Imajte na umu da će se popis koji izvozite stalno mijenjati i s vremenom će se sve više i više paketa dodavati u repozitorije koje koristite. U skladu s tim, s vremena na vrijeme ne zaboravite zamijeniti datoteku koju izvozite. Kako biste izvezli popis paketa i spremili ovaj popis u mapu C:\TestPosh, morate pokrenuti sljedeću naredbu: Pronađi-paket | Export-CliXML C:\TestPosh\Test.xml

    Imajte na umu da će vam procedura izvoza svakako oduzeti neko vrijeme. Nakon što se naredba završi s izvođenjem i na vašem računalu bude stvorena XML datoteka, uvezite je i, radi lakšeg pregleda, pomoću cjevovoda i naredbe Prikaz rešetke, koji je odgovoran za prikaz rezultata izvršenja naredbi u prozoru u obliku interaktivne tablice, možete vidjeti koji će paketi biti dostupni za instalaciju. Naravno, ovaj popis paketa možete otvoriti pomoću bilo koje aplikacije koja može obraditi XML datoteke, na primjer, pomoću Excela. Ova naredba, kao što možete vidjeti na sljedećoj ilustraciji, izgleda ovako: Import-CliXML C:\TestPosh\Test.xml | Out-GridView

    Budući da je pružatelj usluga već instaliran, možete prijeći na sljedeći dio ovog postupka, naime

    Instaliranje softvera pomoću PowerShell-a

    Prije instaliranja softverskih proizvoda, trebali bismo pogledati što je već instalirano na računalu. Za izvođenje ovog zadatka možete koristiti cmdlet Get-Paket, koji vraća popis svih softverskih paketa instaliranih na lokalnom računalu, bilo putem OneGeta ili drugih alata za instalaciju aplikacije. Opcionalno, također možete pokrenuti cmdlet Get-Paket i na udaljenim računalima pokretanjem kao dio naredbe Invoke-Command, naredbe Enter-PSSession ili skripte.

    Ako želite dobiti informacije o određenom softveru, na primjer, o instaliranim proizvodima Microsoft Office 2013, možete koristiti parametar –Name s odgovarajućom vrijednošću uz ovaj cmdlet, na primjer, Get-Package - Naziv "office 2013". Ishod ovog cmdleta vidljiv je ispod:

    Prije instaliranja softvera, pokušajmo odlučiti što trebamo instalirati. Budući da je na stroju instaliran samo Office 2013 i nekoliko drugih aplikacija, pokazat ću vam kako možete instalirati softverske proizvode kao što su Adobe Creative Cloud, Adobe Reader, Notepad++, kao i Process Explorer, Process Monitor i WinRar.

    Zbog činjenice da prije procesa instalacije moramo lokalizirati same pakete, trebali bismo koristiti mogućnosti cmdleta Pronađi-paket. Kao što ste već primijetili malo ranije, ovaj cmdlet vam omogućuje pretraživanje instalacijskih paketa u izvorima paketa dostupnim na lokalnom računalu. Ako ne koristite nikakve parametre s ovim cmdlet-om, naredba će prikazati potpuni popis svih aplikacija, kao što je ranije navedeno.

    Na primjer, prvo pokušajmo pronaći Adobe aplikacije koje su dostupne za instalaciju od dobavljača Chocolatey kojeg smo dodali. Da biste to učinili, osim samog cmdleta, dovoljno je navesti parametar -Ime i kao vrijednost unesite željeni programski proizvod. Budući da instalacijski paketi mogu imati naziv proizvoda nakon riječi Adobe, trebali biste unijeti naziv proizvoda na sljedeći način: Adobe*, kao što je prikazano na sljedećoj slici. Kao što vidite, modul OneGet otkrio je sljedeći instalacijski paket u repozitoriju: adobe-creative-cloud verzija 1.0. U principu, ovo je jedan od proizvoda koji tražite, što znači da ga treba ugraditi. Da biste to učinili, kao što se također može vidjeti na sljedećoj ilustraciji, trebate koristiti mogućnosti cmdleta Instalacijski paket. Da biste instalirali Creative Cloud, pokrenite sljedeću naredbu Instalacijski paket -Naziv adobe-creative-cloud –Force, gdje parametar Force, kao što je uobičajeno u PowerShell-u, nadjačava ograničenja koja sprječavaju izvršenje naredbe sve dok promjene ne počnu kršiti sigurnosne zahtjeve. Izlaz ovih naredbi može se vidjeti na sljedećoj ilustraciji:

    Sada, nakon instaliranja prvog softverskog proizvoda, pokušajmo potražiti određenu verziju Adobe Readera. Da biste to učinili, uz već poznatu naredbu Find-Package – Naziv AdobeReader treba dodati parametar – Sve verzije koji vraća sve dostupne verzije paketa ili sve verzije paketa koje su u rasponu navedenom u parametrima Minimalna verzija I MaximumVersion. Imajte na umu da ovaj parametar nije obavezan, jer pretraživanje inicijalno prikazuje najnoviju verziju softverskog proizvoda. Sada od svih dostupnih verzija treba odabrati onu koju treba instalirati na računalu, npr. neka to bude verzija 2015.007.20033 . kako biste instalirali ovu određenu verziju čitača, slijedite naredbu Instalacijski paket - Naziv AdobeReader dodaj parametar –Potrebna verzija sa značenjem 2015.007.20033 , koji navodi točnu verziju paketa koju želite instalirati. Također možete instalirati najveću dostupnu verziju proizvoda dodavanjem parametra MaximumVersion s pripadajućim značenjem. Izlaz ovih naredbi može se vidjeti na sljedećoj ilustraciji:

    Ako trebate instalirati najnoviju verziju softverskog proizvoda, a istovremeno ne želite upisivati ​​više naredbi u PowerShell, možete generalizirati pretraživanje paketa i instalaciju pomoću cjevovoda. Na primjer, ako instalirate najnoviju verziju uređivača teksta Notepad++, možete pokrenuti sljedeću naredbu: Find-Package -Name NotepadPlusPlus | Instalacijski paket – Prisilno. Dakle, tražite paket u repozitoriju i, ako pronađete rezultat, odmah ga instalirate u tihom načinu rada. Postupak instalacije ovog softverskog proizvoda prikazan je u nastavku:

    Sada, budući da prema gornjem zadatku ostaje instalirati Process Explorer, Process Monitor i WinRar, pokušajmo instalirati nekoliko softverskih paketa odjednom. Da biste to učinili, preporučljivo je znati točno kako se ti paketi zovu u samom repozitoriju. Kao što sam ranije napisao, ovo se može provjeriti pomoću cmdleta Pronađi-paket | Out-GridView. Nakon što su poznati nazivi paketa, možete nastaviti sa samom instalacijom. Da biste to učinili, možete pokrenuti sljedeću naredbu: Find-Package -Name procexp, procmon, winrar | Instalacijski paket. U ovom primjeru, kao što možete vidjeti na sljedećoj ilustraciji, posebno ne navodim parametar Sila tako da možete obratiti pažnju na cijeli proces instaliranja više softverskih paketa u isto vrijeme.

    Spremanje i brisanje programa

    Posljednja dva cmdleta o kojima će biti riječi u ovom članku odgovorna su za spremanje instalacijskog paketa i brisanje instaliranog programa. Počnimo sa štednjom.

    Kako biste spremili instalacijski paket, možete koristiti sljedeći cmdlet modula OneGet, odnosno modul Spremi-paket. Ovaj cmdlet omogućuje spremanje paketa na vašem lokalnom računalu bez kasnijeg instaliranja. Prema zadanim postavkama, ovaj cmdlet sprema najnoviju verziju softverskog proizvoda, ali ako dodate parametar u trenutni cmdlet Sve verzije, sve verzije programa koje ste odabrali bit će spremljene na vašem računalu. Štoviše, slično parametrima cmdleta programa za pretraživanje i instalaciju, uz spremanje svih verzija, pomoću parametara -MaximumVersion I –Minimalna verzija, također možete odabrati raspon verzija paketa koje želite zadržati. Za spremanje paketa na računalu, osim opcije Ime i, ako je potrebno, parametar odgovoran za verziju proizvoda, morate navesti parametar Staza s budućom lokacijom vašeg instalatera.

    Kao što možete vidjeti na sljedećoj ilustraciji, naredba Save-Package –Name Procexp –Path C:\TestPosh spremit će najnoviju verziju Process Explorera u mapu C:\TestPosh:

    Ako ste slučajno instalirali pogrešan paket, uvijek možete koristiti modul OneGet da ga uklonite. Za to se koristi cmdlet Deinstalacijski paket. Kao i kod ostalih cmdleta u ovom modulu, za uklanjanje programa morate navesti parametar Name s odgovarajućim nazivom aplikacije, a također, za tiho uklanjanje, možete koristiti parametar Force. Na primjer, da biste uklonili prethodno instalirani WinRAR s vašeg računala, morate pokrenuti sljedeću naredbu: Uninstall-Package –Name WinRAR –Force kao ispod:

    Zaključak

    Iz ovog ste članka naučili o jednoj od značajki novog operativnog sustava od Microsofta, naime o instalaciji softverskih proizvoda pomoću naredbene ljuske Windows PowerShell. Rekao sam vam o samom modulu OneGet, osnovnoj terminologiji koja se koristi uz ovu tehnologiju i koji postoje unaprijed instalirani pružatelji paketa. Naučili ste kako možete povezati dobavljača paketa treće strane s OneGetom i kako vam on može pomoći da pronađete, instalirate, spremite i deinstalirate softver.

    Nadam se da su vam ove informacije bile korisne i da ste naučili nešto novo. Ako imate bilo kakvih pitanja o materijalu u ovom članku, postavite ih u komentarima, rado ću vam pružiti bilo kakvu pomoć.

    VN:F

    Ocjena: 9.9/ 10 (18 glasova)

    Instaliranje programa pomoću PowerShell-a u sustavu Windows 10, 9,9 od 10 na temelju 18 ocjena

    Najbolji članci na temu