Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Iron
  • Instaliranje i konfigurisanje Windows PowerShell-a. Windows PowerShell - Korisne napomene Instalacija powershell-a

Instaliranje i konfigurisanje Windows PowerShell-a. Windows PowerShell - Korisne napomene Instalacija powershell-a

Danas ću vam pokazati kako da instalirate i koristite administrativni modul Active Directory za Windows PowerShell. Cmdlete u ovom modulu mogu se koristiti za dohvaćanje informacija i upravljanje različitim AD objektima i parametrima. Ovaj modul se instalira u serverske operativne sisteme kao posebna komponenta. Na desktop operativnom sistemu (Windows 10, 8.1, 7) moraćete da instalirate paket Remote Server Administration Tools (RSAT), koji uključuje modul za interakciju sa AD iz PowerShell-a. Pored ovog modula, RSAT uključuje sve potrebne grafičke dodatke za upravljanje, pomoćne programe komandne linije i Windows PowerShell module za Windows i AD administraciju. Ovaj paket za vašu verziju OS-a morate sami preuzeti sa Microsoft web lokacije.

Instaliranje modula Active Directory za Windows PowerShell

Modul Active Directory za Windows PowerShell je prvi put predstavljen u Windows Server 2008 R2. Automatski se instalira na. Da biste koristili PowerShell cmdlete iz AD modula, domen mora imati najmanje jedan Windows Server 2008 R2 ili noviji kontroler. Ako vaša mreža ima samo DC-ove koji koriste Windows Server 2003 i 2008, potrebno je da preuzmete i instalirate Active Directory Management Gateway Service. PowerShell cmdleti iz modula Active Directory komuniciraju s web uslugom koja je dio kontrolera domene s ulogom ADDS.

Modul Active Directory za Windows PowerShell možete instalirati ne samo na kontroler domene, već i na bilo koji server domene člana ili radnu stanicu. Na Windows Server 2016, možete instalirati Windows PowerShell Active Directory modul sa grafičke konzole Server Manager pomoću čarobnjaka za dodavanje uloga i funkcija. Dovoljno je pokrenuti čarobnjaka i u fazi odabira komponenti odabrati Alati za administraciju udaljenog poslužitelja -> Alati za administraciju uloga -> AD DS i AD LDS alati -> Modul Active Directory za Windows PowerShell(Alati za udaljenu administraciju servera> Alati za administraciju uloga> AD DS i AD LDS alati -> Modul Active Directory za Windows PowerShell).

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

Uvozni modul ServerManager
Add-WindowsFeature -Naziv "RSAT-AD-PowerShell" –IncludeAllSubFeature

U Windows 10, Windows 8.1 i Windows 10, da biste instalirali RSAT-AD-PowerShell modul, prvo morate instalirati odgovarajuću verziju RSAT-a, nakon toga modul mora biti omogućen u Control Panel-u (Kontrolna tabla -> Programi -> Programi i Funkcije i kliknite na "Omogući Windows funkcije" -> Alati za udaljenu administraciju servera -> Alati za administraciju uloga -> AD DS i AD LDS alati -> omogućite modul Active Directory za komponentu Windows POwerShell.

Alternativno, možete instalirati modul koristeći PowerShell:

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

Uvoz i korištenje Active Directory PowerShell modula

U 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 pomoću naredbe:

Alternativno, možete izvesti modul sa udaljene mašine na kojoj je već instaliran i uvesti ga u vašu PowerShell sesiju:

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

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

Ako je računar uključen u domenu, po defaultu se kreira disk prema imenu AD :. Možete otići do ovog diska pomoću naredbe CD i koristiti poznate komande za rad sa sistemom datoteka za navigaciju ovim diskom. Putanja su u X500 formatu.

PS C: \> cd AD:
PS AD: \> red

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

Možete prikazati listu dostupnih cmdlet modula za rad s Active Directory-om na sljedeći način:

Get-Command -Module ActiveDirectory

Različite verzije Windows-a imaju različit broj dostupnih cmdlet-a:

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

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

Windows PowerShell je ljuska komandne linije i jezik skripti sa moćnom, lijepom sintaksom za administraciju sistema. Windows PowerShell je odličan alat za upravljanje i automatizaciju administracije Windows i Windows aplikacija.

Bio sam veliki obožavatelj vbs skripti. Pošto sam primetio da je za one zadatke za koje sam prethodno koristio Delphi, skriptni jezik vbs sasvim prikladan. Uostalom, mnogo je zgodnije samo otvoriti notepad, dodati nekoliko redaka tamo, spremiti datoteku sa željenom ekstenzijom i pokrenuti skriptu. Da biste to uradili, ne morate ništa da instalirate, kao što je Delphi, koji se takođe plaća.

Iako vbs nije loš, njegov nasljednik PowerShell ima mnogo više funkcionalnosti.

Imam vbs skriptu koja automatski objavljuje slike na jednom od blogova. Postojala je potreba da se slika poravna po širini ili visini, ovisno o rezoluciji dodane slike. I tako nisam mogao dobiti rezoluciju slika koristeći vbs skriptu, ali kroz PowerShell je to vrlo jednostavno.

Ako počevši od Windowsa 7, PowerShell je u paketu sa samim Windowsom, onda u Windows XP-u morate ga preuzeti i instalirati - preuzmite PowerShell V2 za Windows XP SP3.

Petu verziju Powershell-a možete preuzeti sa linka: microsoft.com, tamo je takođe opisano koji fajl preuzeti za potreban OS i kako ga instalirati.

Kako mogu omogućiti pokretanje lokalnih PowerShell skripti?

Windows podrazumevano neće dozvoliti pokretanje PowerShell skripti zbog bezbednosnih razloga. Lokalnim skriptama mora biti dozvoljeno pokretanje. Pokrenite naredbu u konzoli (omogućit će vam pokretanje lokalnih skripti i preuzetih skripti potpisanih pouzdanim certifikatom):

powershell -Command Set-ExecutionPolicy RemoteSigned

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

Nije moguće učitati datoteku C: \ ImageSize.ps1 jer je skriptiranje zabranjeno na ovom sistemu. Unesite "get-help about_signing" za više informacija.
+ Info o kategoriji: NotSpecified: (:), ParentContainsErrorRecordException
+ FullyQualifiedErrorId: RuntimeException

Da vratite ovu sigurnosnu politiku nazad, napišite:

powershell -Command Set-ExecutionPolicy Ograničeno

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

powershell -Command Set-ExecutionPolicy Unrestricted

Ako vidite poruku poput ove kada pokrenete skriptu:

Sigurnosno upozorenje Pokrenite samo skripte u koje vjerujete. Iako skripte sa Interneta mogu biti korisne, ova skripta potencijalno može naštetiti vašem računaru. Želite li pokrenuti \ server \ scripts \ my.ps1? [D] Ne pokreni [R] Pokreni jednom [S] Obustavi [?] Pomoć (podrazumevano je "D"): d

A ako ga se želite riješiti, onda kada pokrećete skriptu, koristite parametar -ExecutionPolicy Bypass

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

Kako da pokrenem PowerShell skriptu?

Unesite naredbu u komandnu liniju

Powershell -File your-scriptname.ps1

Gdje je ime vaše-skripte.ps1 naziv vaše skripte. Datoteke skripte PowerShell imaju ekstenziju * ​​.ps1

Pomoć ili pomoć za Windows PowerShell

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

Unesite komande u konzolu:

powershell -naredba Get-Help

powershell -command Get-Help -?

I dobijte dva različita opisa, koji se međusobno nadopunjuju, kako koristiti pomoć.

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

Na primjer:

  • powershell -command Get-Help Get-Help - opća pomoć za Get-Help cmdlet
  • powershell -naredba get-help Get-Help -primjeri - primjeri kako se cmdlet get-help može koristiti
  • powershell -command get-help Get-Help -detailed - detaljna pomoć za get-help cmdlet
  • powershell -command get-help Get-Help -full - najkompletnija pomoć za cmdlet get-help

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

Windows Powershell napomene:

Operatori poređenja

  • -eq - Jednako - Jednako
  • -ne - Nije jednako
  • -ge - Veće ili jednako - Veće ili Jednako
  • -gt - Veće od - Više
  • -lt - Manje od - Manje
  • -le - Manje ili jednako - Manje od ili Jednako
  • -like - Poređenje džoker znakova - Koristite zamjenske znakove za podudaranje s uzorkom
  • -notlike - Poređenje zamjenskih znakova - Koristite zamjenske znakove da pronađete nepodudaranje uzorka
  • -match - Poređenje regularnog izraza - Koristite regularne izraze za podudaranje sa uzorkom
  • -notmatch - Poređenje regularnog izraza - Koristite regularne izraze da pronađete nepodudaranje šablona
  • -replace - Zamijeni operator - Zamjenjuje dio ili cijelu vrijednost lijevo od operatora
  • -contains - Operator zadržavanja - Odredite da li vrijednost lijevo od operatora sadrži vrijednost s desne strane. Rezultat je logička vrijednost
  • -notcontains - Operator zadržavanja - Odredite da vrijednost lijevo od operatora ne sadrži vrijednost s desne strane. Rezultat je logička vrijednost

Podrazumevano, operatori poređenja ne razlikuju velika i mala slova.
Za poređenje osjetljivo na velika i mala slova, naredba ima prefiks "c". Na primjer, operator osjetljiv na velika i mala slova -eq se mijenja u "-ceq".
Za eksplicitno specificirano poređenje bez obzira na velika i mala slova, naredba ima prefiks "i". Primjer: operator -replace neosjetljiv na velika i mala slova bio bi -ireplace

  • -is - Je tip
  • -isnot - Nije tip
  • -as - Kao tip, nema greške ako konverzija ne uspije

PowerShell logički operatori:

  • -i - Oba uslova moraju biti tačna da bi izraz bio tačan
  • -ili - Jedan ili oba uslova moraju biti tačna da bi izraz bio tačan
  • -xor - Jedan uslov mora biti tačan, a drugi netačan da bi izraz bio istinit
  • -not - Navedeni uslovi moraju biti lažni da bi izraz bio istinit
  • ! - Navedeni uslov mora biti netačan da bi izraz bio istinit

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

Operacije sa stringovima

# Podijelite string po razmacima: $ string = "Test string" $ string.split ("") $ string.IndexOf ("") # Traži $ string za prvi razmak # Vraća indeks prvog pojavljivanja PS zasnovan na nuli > "abcdeabcde". indexOf ("cde") 2 # Vraća poziciju indeksa od posljednjeg pojavljivanja navedenog karaktera PS> "abcdeabcde" .lastIndexOf ("c") 7 # Vraća podniz koji počinje na poziciji 1 PS> "abcdefgh " .Substring (1) bcdefgh # Vraća podniz koji počinje na poziciji 1 i 4 karaktera dugačak PS> "abcdefgh". Podniz (1,4) bcde # Umetni podniz na poziciji 0 PS> "abcdefgh" .insert (0, " X") Xabcdeabcde # Brisanje sa pozicije 0 dužine 2 PS> "abcdefgh" .remove (0,2) cdeabcde # Svojstvo objekta - dužina niza PS> "abcdefgh" .length 8 # Vraća True ako niz sadrži podniz "cde" PS> "abcdefgh" .Sadrži ("cde ") True # Vraća True ako string počinje podnizom" abc "PS>" abcdefgh ".startsWith (" abc ") True # Vraća True ako string završava podnizom" fgh "PS>" abcdefgh ".endsWith (" fgh " ) Tru e # Vraća True ako niz sadrži podniz "cde" PS> $ "abcdefgh" -kao "* cde *" True # Vraća niz, gdje je "d" separator PS> "abcdefgh" -split "d" abc efgh # Vraća niz u kombinaciji dva ":" - separator PS> "abcdefgh", "xyz" -join ";" abcdefgh;xyz # Vraća string u kojem će "abc" biti zamijenjen sa "XYZ" PS> "abcdefgh" .replace ("abc", "XYZ") XYZdefgh # Vraća string u kojem su znakovi napisani VELIKIM SLOVIMA PS> "abcdefgh" ( ) ABCDEFGH # Vraća niz u kojem se znakovi pretvaraju u mala slova PS> "ABCDEFGH". ToLower () abcdefgh

Unaprijed definirane varijable

$ kući- korisnički imenik
$ NULL- prazno
$ istina- istina
$ false- lože
$ DebugPreference- “Continue” za izlaz otklanjanja grešaka, “SilentlyContinue” da ne šalje informacije o otklanjanju grešaka. Pogledajte naredbu Write-Debug

Rad sa fajlovima

$ string | Out-File $ file -Dodavanje # Dodaj $ string novom linijom u datoteku $ file $ string = get-content -Putanja $ fajl # Preuzmi sadržaj datoteke u $ string $ file $ jokes = :: ReadAllText ($ file) # pročitajte cijelu datoteku u jednom redu Test-Path "C: \ test.txt" # Provjerite postojanje datoteke

Pronađite sve datoteke sa određenim ekstenzijom u direktoriju i poddirektorijumima.
Zatim kopirajte ove datoteke u drugi direktorij.

$ flist = get-childitem e: \ doc \ * -include * .pdf -recurse $ flist | ForEach-Object ($ _. CopyTo ("e: \ doc \ all_pdf \" + $ _. PSChildName)) ls d: \ | ? ($ _. psiscontainer) | select fullname # Prikaži samo direktorije ls d: \ | ? (! $ _. psiscontainer) | odaberite puno ime # Prikaži samo datoteke $ local = Get-Location # Trenutni direktorij $ local.Path # Radni direktorij $ local.Drive.Root # Root $ local.Drive.Name # Slovo diska $ local.Drive.Used # Disk se koristi $ local .Drive.Free # Besplatno na disku

Prikaz punih naziva datoteka na disku D: koji su se promijenili između 1. juna 2014. i 20. septembra 2014.:

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

Prikaz teksta na ekranu

# tekst na koji treba obratiti pažnju. Istaknuto žutom bojom. Write-Warning ("Tekst koji zahtijeva pažnju") # Samo prikazuje tekst Write-Host ("Samo tekst") # omogućen izlaz za otklanjanje grešaka $ DebugPreference = "Nastavi" # izlazne informacije o otklanjanju grešaka Write-Debug "Ne može otvoriti datoteku." # onemogućen izlaz informacija za otklanjanje grešaka $ DebugPreference = "Tiho nastavi"

Pauzirajte nekoliko sekundi

Start-Sleep -s 15 # Pauzirajte 15 sekundi

Pauzirajte konzolu dok se ne pritisne Enter

Read-Host "Pritisnite Enter"

Rad sa procesima

# Zadatak: ubiti sve procese pod nazivom Notepad # Metod # 1 get-process Notepad | Stop-Proces # Metod # 2 (Radi samo sa jednim procesom) $ plist = get-process Notepad $ plist.Kill () # Metod # 3 (isto kao 2, ali svi procesi) $ plist = get-process Notepad $ plist | ForEach-Object ($ _. Kill ()) # Dobijte procese i njihove datume početka: Get-Process | Format-Table Name, StartTime -AutoSize

Povećanje

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

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

Nizovi

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

Ako Elseif Else Construct

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

ForEach Loop

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

Radujemo se pritisku bilo koje tipke:

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

Tipovi podataka u PowerShell-u

Najčešći tipovi su:

Niz Unicode znakova fiksne dužine A Unicode 16-bitni znak 8-bitni nepotpisani znak 32-bitni predpisani cijeli broj 64-bitni predpisani cijeli broj Boolean Tačno/Netačno vrijednost A 128-bitna decimalna vrijednost Jednostruka preciznost 32-bitni broj s pomičnim zarezom Dvostruki -precizan 64-bitni broj s pomičnim zarezom Datum i vrijeme Xml objekt Niz vrijednosti Hashtable objekt

Postoje i ugrađene konstante poput ove: $ true,$ false, $ null

Unicode: Da biste kodirali Unicode znak u PowerShell stringu, stavite prefiks unicode sa 0x i prebacite ga na System.Char:

PS> 0x263a ☺

Konverzija tipa podataka

Da biste prisilili konverziju na određeni tip podataka, stavite prefiks vrijednosti ili varijable s tipom u uglastim zagradama, ovo je poznato kao Cast Operator i prisiljava odabrani tip podataka:

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

Testiranje tipova podataka

PS C: \> 32 -je
Tačno PS C: \> $ istina -je
Tačno

Funkcije u Powershell-u

funkcija elimS (# funkcija sa 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 $ cijeli broj # ovako ispravno pozvati funkciju - razdvojite parametre razmakom elimS -integer $ integer -string $ string # ovo je također ispravno $ globalno: var1 = "test" je globalna varijabla, tako da možete proslijediti vrijednost varijabli iz funkcija.

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

Odmor

get-host # prikaži verziju powershell Clear-RecycleBin c: -Prisilno # pražnjenje korpe za otpatke Compress-Archive -Path C: \ test \ * -DestinationPath C: \ archive \ test1.zip # arhiviranje foldera Expand-Archive - Put C: \ temp \ test1.zip "C: \ test \ Nova mapa \" # raspakirajte arhivu (Get-CimInstance Win32_operatingSystem) .lastbootuptime # pokažite vrijeme pokretanja sistema write-host $ sleep_array.GetType (). Puno ime # prikaži tip promenljivog prekidača ($ a) (#slučaj - višestruko ako je 1 ($ b = $ b + 10) 2 ($ b = $ b + 20) 3 ($ b = $ b + 30) 4 ($ b = $ b + 40) zadano ($ b = $ b + 50)) Get-Content -Putanja "C: \ scripts \ test.txt" - Sačekajte # linux tail analog

Powershell cmdlet

Sort-Objekat- Sortira objekte u rastućem ili opadajućem redoslijedu na osnovu vrijednosti svojstava objekata. Možete postaviti jedno svojstvo ili više svojstava (sortirati po više ključeva), a možete odabrati sortiranje sa ili bez velikih i malih slova. Alternativno, možete uputiti Sort-Object cmdlet da prikazuje samo objekte s jedinstvenim vrijednostima svojstva.

Copy-Item- kopira element s jedne lokacije u imenskom prostoru na drugu. Copy-Item cmdlet ne uklanja kopirane stavke. Tipovi stavki koje cmdlet može kopirati određuju se dostupnošću Windows PowerShell dobavljača. Na primjer, korištenje cmdleta sa dobavljačem sistema FileSystem kopira datoteke i mape, dok korištenje dobavljača registratora kopira ključeve i unose registratora.

Move-Item- premješta element, uključujući njegova svojstva, sadržaj i potomke, s jedne lokacije na drugu. Obje navedene lokacije moraju biti podržane od strane istog provajdera. Na primjer, možete premjestiti datoteku ili poddirektorij iz jednog direktorija u drugi ili premjestiti potključ registratora iz jednog ključa u drugi. Kada premjestite stavku, ona se briše na originalnoj lokaciji i kreira se na novoj.

Remove-Item- uklanja jedan ili više elemenata. Ovaj cmdlet podržavaju mnogi dobavljači, tako da može ukloniti različite vrste stavki, uključujući datoteke, direktorije, ključeve registratora, varijable, pseudonime i funkcije.

Get-ChildItem- preuzima predmete sa datih lokacija. Ako je stavka kontejner, ovaj cmdlet preuzima stavke iz kontejnera, koje se nazivaju podređenim. Možete koristiti parametar Recurse da dohvatite stavke iz svih podređenih kontejnera. Lokacija može biti lokacija u sistemu datoteka, kao što je direktorij, ili lokacija koju daje drugi dobavljač, kao što je košnica registra ili spremište certifikata.

Powershell cmdlet parametri

-ErrorAction- parametar je prisutan u svim cmdletima, omogućava vam da odredite radnju koja će se izvršiti kada dođe do greške:

  • Nastavi - prikaži poruku o grešci i nastavi s izvršavanjem
  • SilentlyContinue - zanemari grešku i nastavi
  • Zaustavi - prekinuti izvršenje pri prvoj grešci
  • Pitaj - ako dođe do greške, prikaži zahtjev za sljedeće

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

-Šta ako- prikazuje poruku koja opisuje rezultat naredbe, bez stvarnog izvršavanja. Prisutno u svim cmdletima.

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

SSH preko Powershell-a

Primjer kako možete raditi preko SSH-a:

# instalirajte SSH modul, jednom Find-Module Posh-SSH | Install-Module # Kreirajte SSH sesiju: ​​Import-Module Posh-SSH $ ComputerName = "1.2.3.4" $ UserName = "ubuntu" $ KeyFile = "C: \ SSH \ key.pem" $ nopasswd = new-object System.Security .SecureString $ Crendtial = New-Object System.Management.Automation.PSCredential ($ UserName, $ nopasswd) $ SSHSession = New-SSHSession -ComputerName $ ComputerName -Credential $ Crendtial -KeyFile $ KeyFile # Kreirajte ljusku: $SS HSession New-SSHShellStream # pošalji naredbu $ SSH.WriteLine ("ifconfig") # pročitaj odgovor $ SSH.read () # zatvori sesiju: ​​$ sshSession | Remove-SSHSession

naredbe:

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

Bilješka. Možete koristiti ovaj modul bez instaliranja WMF 5.0. Pregled modula za PS 4.0 i 3.0 dostupan je zasebno u martu 2016. godine, a za novije verzije potražite pregled modula PackageManagement PowerShell u Centru za preuzimanje.

Instaliranje programa

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

# Dozvolite instalaciju potpisanih paketa sa Interneta Set-ExecutionPolicy RemoteSigned # Instalirajte Chocolatey provajdera Get-PackageProvider –Naziv Chocolatey -ForceBootstrap # Učinite Chocolatey pouzdanim Set-PackageSource -Name Chocolatey -Trusted # Instalirajte programe Install-Plus firepad, vfo , filezilla, sysinternals -Verbose -Force -ProviderName chocolatey # Dodaj sysinternals putanju u PATH setx PATH "$ env: put; C: \ Chocolatey \ bin" -m

Prodavac preuzima na C: \ Chocolatey \ lib paket zasnovan na skripti chocolateyInstall.ps1. Preuzima program za instalaciju sa službene stranice u folder% temp% \ Chocolatey i pokreće ga u tihom instalacijskom modu. Najjednostavniji primjer je Notepad ++.

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

Pretražite programe

Postoji mnogo programa u repozitorijumima, svi najpopularniji su definitivno tamo.

Pronađite-paket "* zip *", "* komandant *" -ProviderName Chocolatey

Tipovi instalatera i ključevi za tihu instalaciju

  • Stranica za automatsku instalaciju sistema Windows i forum za program za automatsku instalaciju
  • Instaliranje Windows ažuriranja putem Powershell-a

    • Preuzimanje Windows Update PowerShell modula od Microsofta.
    • Raspakujte arhivu u folder% WINDIR% \ System32 \ WindowsPowerShell \ v1.0 \ Modules
    • Ako još niste dozvolili pokretanje lokalnih skripti, dozvoljavamo vam da to učinite: "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 listu 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 preuzeti ih ručno
      • Detaljna pomoć za modul: get-help Get-WUInstall -detailed
      • Pogledajte listu dostupnih ažuriranja isključujući kategoriju "jezički paketi", zaglavlja "Skype" i ažuriranje KB3012973: Get-WUInstall -NotCategory "Jezički paketi" -NotTitle Skype -NotKBArticleID KB3012973 -ListOnly
      • Instalirajte ažuriranja isključujući kategoriju "jezički paketi", zaglavlja "Skype" i ažuriranje KB3012973: Get-WUInstall -NotCategory "jezički paketi" -NotTitle Skype -NotKBArticleID KB3012973 -AcceptAll -IgnoreReboot

    0
    Odnosi se na:
    Office 365 za profesionalce i mala preduzeća, Office 365 za preduzeća, [email protected]
    Windows XP, Windows Vista, Windows Server 2003, Windows 7 i Windows Server 2008

    Pre upotrebe Windows PowerShell-a, uverite se da su ispravne verzije Windows PowerShell-a i Windows daljinskog upravljanja (WinRM) instalirane i konfigurisane na vašem računaru. Morate koristiti Windows Management Framework koji uključuje ispravne verzije Windows PowerShell v2 i WinRM 2.0.

    Ako vaš računar koristi Windows 7 ili Windows Server 2008 R2, ne morate ništa da instalirate. Windows Management Framework je već instaliran.

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

      Windows Vista sa servisnim paketom 1 (SP1) ili 2 (SP2)

      Windows Server 2008 sa servisnim paketom 1 (SP1) ili 2 (SP2)

      Windows Server 2003 sa servisnim paketom 2 (SP2)

      Windows XP servisni paket 3 (SP3).

    Idemo na posao:

    1. Uklanjanje prethodnih verzija Windows PowerShell-a sa vašeg računara

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

    1.1 Uklanjanje Windows PowerShell-a iz operativnog sistema Windows Vista

      U grupi Programi na kontrolnoj tabli otvorite Programi i funkcije i uklonite sve instance Windows PowerShell-a koje se nalaze na listi instaliranih programa. Na primjer, CTP verzija Windows PowerShell v2 može se pojaviti kao "Windows PowerShell (TM) V2".

      U odeljku Zadaci izaberite Prikaži instalirane ispravke i uklonite sve instance Windows PowerShell-a koje se nalaze na listi instaliranih ispravki. Na primjer, Windows PowerShell V1 može se pojaviti kao ažuriranje za Windows s jednim od sljedećih brojeva članaka u Microsoft bazi znanja:

    1.2 Uklanjanje Windows PowerShell-a iz Windows Server 2008

      Pokrenite Server Manager i otvorite odjeljak Komponente.

      1. Odaberite Ukloni funkcije.

        Odaberite Windows PowerShell i slijedite upute za deinstalaciju.

      Na kontrolnoj tabli, u okviru Programi, otvorite Programi i funkcije i uklonite sve instance Windows PowerShell-a koje se nalaze na listi instaliranih programa.

      U grupi Zadaci izaberite Prikaži instalirana ažuriranja. Uklonite sve instance Windows PowerShell-a prisutne na listi instaliranih ažuriranja.

    1.3 Uklanjanje Windows PowerShell-a iz Windows Server 2003 ili Windows XP

      Otvorite Add or Remove Programs na kontrolnoj tabli i uklonite sve instance Windows PowerShell-a koje se nalaze na listi instaliranih programa.

      U okviru Dodaj ili ukloni programe izaberite Prikaži ažuriranja. Uklonite sve instance Windows PowerShell-a prisutne na listi instaliranih ažuriranja. Na primjer, Windows PowerShell V1 može se pojaviti kao ažuriranje za Windows sa sljedećim brojem članka u Microsoft bazi znanja: KB926139.

    2. Uklanjanje prethodnih verzija WinRM-a sa vašeg računara

    Sve postojeće verzije WinRM-a moraju se deinstalirati prije instaliranja Windows Management Framework-a.

    2.1 Deinstaliranje WinRM-a sa Windows Vista ili Windows Server 2008

      U grupi Programi na kontrolnoj tabli otvorite Programi i funkcije i uklonite sve instance Windows daljinskog upravljanja koje se nalaze na listi instaliranih programa.

      U grupi Zadaci izaberite Prikaži instalirana ažuriranja. Uklonite sve instance Windows daljinskog upravljanja koje se nalaze na listi instaliranih ažuriranja. Na primjer, CTP verzija WinRM 2.0 može se pojaviti kao "WindowsRemoteManagement" s jednim od sljedećih brojeva članaka u Microsoft bazi znanja:

    2.2 Uklanjanje Windows PowerShell-a iz Windows Server 2003 ili Windows XP

      Otvorite Add or Remove Programs na kontrolnoj tabli i uklonite sve instance Windows Remote Management-a koje se nalaze na listi instaliranih programa.

      U okviru Dodaj ili ukloni programe izaberite Prikaži ažuriranja. Uklonite sve instance Windows daljinskog upravljanja koje se nalaze na listi instaliranih ažuriranja. Na primjer, WinRM se može pojaviti kao ažuriranje za Windows sa sljedećim brojem članka u Microsoft bazi znanja: KB936059.

    3. Instaliranje Windows Management Framework-a

      Preuzmite i instalirajte Windows Management Framework. Odaberite paket koji sadrži Windows PowerShell v2 i WinRM 2.0 koji je prikladan za vaš operativni sistem, arhitekturu sistema i jezik.

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

    Bilješka

    4. Testiranje mogućnosti pokretanja skripti u Windows PowerShell-u

      Kliknite na Start, Svi programi, Pribor, Windows PowerShell.

      Da biste otvorili Windows PowerShell, uradite jedno od sljedećeg:

      • Za Windows Vista, Windows 7 ili Windows Server 2008 R2, kliknite desnim tasterom miša na Windows PowerShell i izaberite Pokreni kao administrator. Kada vas Kontrola korisničkog naloga zatraži da nastavite, kliknite na Nastavi.

        Za Windows XP ili Windows Server 2003, kliknite na Windows PowerShell.

      Pokrenite sljedeću naredbu:

      Get-ExecutionPolicy

      Ako se vraćena vrijednost razlikuje od RemoteSigned, morate promijeniti vrijednost u RemoteSigned.

      Bilješka

      Kada je politika izvršavanja skripte postavljena na RemoteSigned, mogu se pokrenuti samo skripte kreirane na računaru korisnika ili potpisane od pouzdanog izvora.

    Priprema za pokretanje skripti u Windows PowerShell-u

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

    Set-ExecutionPolicy RemoteSigned

    5. Provjerite da li WinRM ima dozvolu za povezivanje na Windows PowerShell

      Izaberite Start, Svi programi, Pribor u nizu.

      Uradite jedno od sljedećeg da otvorite komandnu liniju:

      • Za Windows Vista, Windows 7 ili Windows Server 2008 R2, kliknite desnim tasterom miša na Command Prompt i izaberite Pokreni kao administrator. Kada vas Kontrola korisničkog naloga zatraži da nastavite, kliknite na Nastavi.

        Za Windows XP ili Windows Server 2003, izaberite Command Prompt.

      Na komandnoj liniji pokrenite sljedeću naredbu:

      winrm get winrm / config / client / auth

      Bilješka

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

    Pronađite vrijednost Basic = u rezultatima. Ako je specificirana vrijednost Basic = false, tada se mora promijeniti u Basic = true.

    Bilješka

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

    Omogućavanje podrške za osnovnu autentifikaciju u WinRM-u

      U prozoru komandne linije otvorenog kao administrator, pokrenite sljedeće naredbe: Vrijednost u vitičastim zagradama () je osjetljiva na velika i mala slova:

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

      Provjerite vrijednost Basic = true u izlazu naredbe.

      Bilješka

      Ako je WinRM usluga pokrenuta, pokrenite naredbu 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 upotrebu. Razmažen činjenicom da je u osnovnoj verziji Windows Servera sa GUI (Grafički korisnički interfejs), kao iu Windows Server 2012 Core i novijim, Powershell već instaliran, bio sam veoma zbunjen činjenicom da u Windows Server 2008R2 Core nije čak ni mirisalo. Jer Podešavanje nije bilo baš očigledno i morao sam da guglam i technet, pa sam odlučio da zapišem malu belešku za budućnost.

    Dakle, prvo ćemo imati na raspolaganju barem PowerShell 2.0 (u stvari, možete preskočiti ovaj korak tako što ćete uraditi sve što je dolje opisano u cmd-u, ali ja sam počeo s tim). To se može učiniti na dva načina: pokretanjem uslužnog programa sconfig.cmd na komandnoj liniji ili putem DISM-a ( Deployment Image Servising and Management) na istom mestu. Prvi nam nudi pseudo-grafički interfejs, gde ćemo pod tačkom 4 naći mogućnost da instaliramo PS 2.0.

    Preko DISM-a to se radi na sljedeći način:
    dism.exe / online / enable-feature: MicrosoftWindowsPowerShe ll

    Nakon što smo instalirali PS, restartovali i dobili malo adekvatniji alat na raspolaganju, pokušaćemo da ga ažuriramo na trenutnu verziju. U vrijeme pisanja ovog teksta, to je verzija 4.0 ili verzija 5.0 za pregled. Za mene je najmanje upotrebljiva verzija 3.0, koja već ima puno cmdlet-a za upravljanje ulogama servera i resursima koji nedostaju u drugoj verziji. Windows PowerShell 3.0 zahtijeva .Net Framework 4.0 ili noviji.
    Ako sada pokušamo da instaliramo .Net 4.0, saznaćemo da nam je za to potreban već instaliran .Net 2.0, koji iz nekog razloga nedostaje u Server Core izdanju. Smiješno je, ali iz navike, nakon preuzimanja instalacionog programa i njegovog pokretanja, dobićemo odbijenicu za instalaciju i napomenu 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 da koristite Powershell 3.0, instalirajte .Net 4.0, ali ako želite najnoviju verziju, trebat će vam .Net 4.5.1 ili noviji. Izbor je na vama, njegova instalacija je izuzetno jednostavna. Jedini problem je nabaviti instalaterski paket - povezao sam mrežni disk sa serverom, na koji sam uploadovao sve instalacione fajlove; možete koristiti bilo koji medij za pohranu koji vam odgovara.

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

    Tradicionalno, nakon instalacije treba nam ponovno pokretanje, nakon što ga završimo, na raspolaganju će nam biti PowerShell 4.0.

    Inače, da biste mogli da koristite cmdlet Add-WindowsFeature (preimenovan u Install-WindowsFeature u Windows Serveru 2012) za konfigurisanje uloga servera, moraćete da instalirate komponente Server Manager preko istog DISM.EXE. izgleda ovako:
    dism.exe / online / enable-feature: ServerManager-PSH-Cmdlet s
    Općenito, jako sam razmažen najnovijim verzijama PS-a, tk. Počeo sam raditi na tome nakon izdavanja treće verzije, ali kako se ispostavilo, dism.exe se može koristiti i za instaliranje uloga. A ako ne znate naziv funkcije koja vam je potrebna, uvijek možete pogledati sve dostupne opcije i njihovo stanje kroz parametar / get-features. Ali što se mene tiče, Get-WindowsFeature je mnogo informativniji. =)
    dism.exe / online / get-features vs. Get-WindowsFeature

    Prošlo je neko vrijeme od lansiranja konačnog izdanja najnovijeg Microsoftovog operativnog sistema, a ne samo entuzijasti koji testiraju međusklopove, već i oni korisnici koji su preuzeli dugo očekivano ažuriranje već su uspjeli da se upoznaju s njim. Da li je novi sistem dobra stvar ili ne? Da li je to najnoviji inovativni proizvod ili samo G8 koji je trebao biti objavljen u dogledno vrijeme? To su pitanja na koja se, u svakom slučaju, ne može dati jednoznačan odgovor. Pored očiglednih inovacija, koje uključuju Start meni, Microsoft Edge pretraživač, Xbox kompatibilnost, integrisanu pretragu i pregled zadataka sa Cortanom, postoje brojne inovacije za koje ne zna svaki korisnik Windows 10.

    Jedna od ovih inovacija je mogućnost direktnog instaliranja softverskih proizvoda pomoću Windows PowerShell-a, o čemu će biti riječi kasnije u ovom članku. Uprkos činjenici da se ova funkcionalnost pojavila još u aprilu 2014. sa izdavanjem Windows Management Framework 5.0 Preview-a, mogla je postati izvorna tek sa konačnim izdanjem prvih deset. Dakle, da vidimo koji modul je odgovoran za ovu funkcionalnost i kako možete instalirati softverske proizvode bez preuzimanja instalacionih datoteka.

    Windows PowerShell OneGet modul

    Od objavljivanja Windows Management Framework 5.0 Preview, Windows PowerShell ima nekoliko novih funkcija dizajniranih da olakšaju upravljanje računarima. Ove mogućnosti uključuju dvije uzbudljive tehnologije, odnosno Windows PowerShell željenu konfiguraciju stanja i Certified for Windows Network Switches.

    U slučaju mrežnih prekidača Certified for Windows, dodato je nekoliko Windows PowerShell cmdlet komandi za upravljanje mrežnim prekidačima certificiranim za Windows. To jest, postoji 19 novih cmdlet-a koje možete pronaći pokretanjem "Get-Command * -NetworkSwitch *" u PowerShell-u. Budući da je tehnologija prilično ozbiljna i zaslužuje posebnu pažnju, u ovom članku ću se ograničiti na samo mali opis i neću detaljnije razmatrati ovu tehnologiju.

    Ali o drugoj tehnologiji treba detaljnije razgovarati. Ako instalirate Windows Management Framework 5 ili Windows 10, možete koristiti alat koji će vam olakšati pronalaženje i instaliranje softvera na vašim računarima. OneGet je takav alat. OneGet je agregator za upravljanje paketima, koji je modul specifičan za spremište koji pruža jedno sučelje za otkrivanje, instaliranje i inventarizaciju softvera. Drugim riječima, ova tehnologija, s jedne strane, obezbjeđuje skup cmdlet-a koji omogućavaju krajnjem korisniku da upravlja instalacijskim paketima (o čemu ćemo govoriti malo kasnije), a s druge strane pruža interfejs za pisanje vendor paketi.

    Prije nego se počnemo baviti samim modulom, trebali biste obratiti pažnju na nekoliko definicija koje su usko povezane s ovom tehnologijom, a to su:

    • Paket... Ukratko, paket je program koji je izgrađen i instaliran iz određenog izvora koristeći bilo koji raspoloživi sistem za upravljanje paketima. Tipično, paket pruža kompajlirani kod s dodatnim meta informacijama kao što su opis paketa, verzija ili "zavisnosti". Sistem za upravljanje paketima, na primjer, da izvrši automatsko ažuriranje softverskog proizvoda na novu verziju, kako bi se uvjerio da su sve ovisnosti paketa instalirane, trebao bi obraditi takve meta informacije i, ako je potrebno, automatski instalirati sve pakete koji nedostaju ;
    • Repozitorijum... Prema wikipediji, spremišta su mjesta gdje se podaci pohranjuju i održavaju. Najčešće se podaci u spremištu pohranjuju u obliku datoteka dostupnih za dalju distribuciju preko mreže. Izvorno, spremišta su koristili Linux sistemi, omogućavajući vam da instalirate pakete neophodne da sistem radi sa drugih lokacija. Većina repozitorija je besplatna, međutim neke kompanije omogućavaju pristup sopstvenim repozitorijumima uz plaćenu pretplatu. Pričaćemo o OneGet repozitorijumima malo ispod;
    • Package manager... To je skup softverskih alata zaduženih za automatizaciju procesa instaliranja, ažuriranja, konfigurisanja i uklanjanja softverskih paketa. Paketi obično uključuju bazu podataka koja navodi preduvjete i softverske ovisnosti, te informacije o izdanju proizvoda kako bi se spriječilo korištenje nefunkcionalnih softverskih proizvoda. Upravljači paketima uključuju Linux apt-get ili NuGet, koji se kasnije pojavio na Windows sistemima. Zauzvrat, OnetGet je logična ekstenzija NuGet-a koja djeluje kao agregator za sve dostupne menadžere paketa koji se nazivaju provajderi.

    Microsoft inicijalno ograničava upotrebu većine dostupnih dobavljača tako što daje osnovu koja vam omogućava da otkrijete i instalirate dodatne dobavljače za upravljanje vašim softverom. Među osnovnim dobavljačima su:

    • Bootstrap- dobavljač koji vam omogućava da pronađete druge dobavljače;
    • MSI- dobavljač posvećen rukovanju MSI datotekama;
    • MSU- zauzvrat, dobavljač odgovoran za obradu datoteka Microsoft ažuriranja;
    • ARP(Dodaj/Ukloni programe) - dobavljač odgovoran za inventarne podatke o bilo kojem softverskom proizvodu koji je registrovan u komponenti sistema „Uklanjanje ili promjena programa“;
    • PowerShellGet Je provajder koji vam omogućava upravljanje raznim PowerShell modulima.

    Kompletnu listu OneGet provajdera sa njihovim kratkim opisima možete pronaći na sledećem linku.

    Sam OneGet modul uključuje 10 Windows PowerShell cmdlet komandi, od kojih će većina biti obrađena u sljedećem dijelu ovog članka. Ove cmdlet komande uključuju:

    • Find-Package - Obavlja pretragu paketa;
    • Get-Package - vraća listu svih paketa instaliranih na računaru;
    • Get-PackageProvider - Vraća listu dobavljača koji su povezani na OneGet na ovom računaru;
    • Get-PackageSource - Vraća listu izvora paketa koji su registrovani kod određenog dobavljača paketa.
    • Instalacijski paket - omogućava vam da instalirate jedan ili više softverskih proizvoda;
    • Register-PackageSource Dodaje izvor paketa za navedenog dobavljača paketa.
    • Save-Package - omogućava vam da sačuvate paket na vašem lokalnom računaru bez dalje instalacije;
    • Set-PackageSource Mijenja izvor paketa za specificiranog dobavljača paketa.
    • Uninstall-Package - uklonite jedan ili više softverskih paketa;
    • Unregister-PackageSource - Briše registrovani izvor paketa.
      • Instaliranje softvera sa OneGet-om

        Dakle, došlo je vrijeme za sam proces instaliranja softverskih proizvoda. Zatim ćete vidjeti kako možete instalirati dobavljača paketa, pronaći potreban softver, instalirati ga, kao i kako možete ukloniti nepotrebnu aplikaciju i preuzeti instalacioni paket softverskog proizvoda na svoje računalo. Počnimo redom.

        Instaliranje dobavljača Chocolatey Package

    1. Otvorite Windows PowerShell i da biste prikazali listu izvora paketa koji su registrovani sa OneGet na lokalnom računaru, pokrenite naredbu Get-PackageSource... Imajte na umu da ako u naredbi navedete određenog dobavljača paketa, tada će cmdlet Get-PackageSource za vas prikazati samo izvore koji su povezani s dobavljačem koji ste naveli. Inače, naredba vraća sve izvore paketa koji su registrirani u OneGet-u. Budući da moramo vidjeti izvore paketa za sve provajdere, naredba će se pokrenuti bez ikakvih dodatnih parametara. Imajte na umu da u ovoj fazi još niste instalirali dodatni dobavljač paketa koji će se koristiti za instaliranje softverskih proizvoda. Izlaz naredbe možete vidjeti na sljedećoj slici:

    2. Kao što možete vidjeti na prethodnoj ilustraciji, Chocolatey provajder nije instaliran na našoj lokalnoj mašini. Stoga ovo treba ispraviti. Imajte na umu da PowerShell ExecutionPolicy mora biti postavljena na Neograničeno... U suprotnom nećete moći dodati provajdera. Dozvolite mi da vas podsjetim da je cmdlet Get-ExecutionPolicy omogućava vam da prikažete politike izvršavanja za trenutnu sesiju. Politika izvršavanja je dio sigurnosne strategije Windows PowerShell-a koja određuje da li se konfiguracijske datoteke mogu učitati i pokrenuti skripte, te koje skripte zahtijevaju digitalni potpis da bi se izvršile. Zadana postavka je “ Ograničeno"(Ne učitava konfiguracijske datoteke i ne izvršava skripte), pa ako niste promijenili vrijednost politike izvršavanja za sebe, pokrenite naredbu Set-Executionpolicy Unrestricted... Budući da je zadana politika izvršavanja postavljena na LocalMachine tako da se postavke politike primjenjuju samo na trenutnog korisnika, također možete dodati parametar naredbi koju primjenjujete –Scope sa značenjem Trenutni korisnik... Izlaz ove dvije naredbe može se vidjeti na sljedećoj ilustraciji:

    3. U ovoj fazi možemo pogledati listu dobavljača koji su registrovani u OneGet-u na trenutnom računaru. Da biste to učinili, možete koristiti cmdlet Get-PackageProvider... Ovaj cmdlet, kao što sam već pomenuo malo iznad, vraća listu dobavljača paketa koji su već povezani na OneGet. Opcionalno, možete filtrirati rezultate na osnovu cijelog ili dijela jednog (ili više) imena dobavljača. Na primjer, da biste vidjeli koji su provajderi trenutno povezani, pokrenuli biste cmdlet Get-PackageProvider bez ikakvih dodatnih parametara. Kao što možete vidjeti na sljedećoj ilustraciji, inicijalno na svom računaru imam povezana 4 takva provajdera, o kojima sam vam već danas pričao. Sada, da biste instalirali Chocolatey provajdera na vaš računar, morate pokrenuti naredbu Get-PackageProvider –Naziv Chocolatey –ForceBootstrap gdje je parametar –ForceBootstrap odgovoran za automatsku instalaciju provajdera. Imajte na umu da kao opšte pravilo, kada instalirate Chocolatey provajder, NuGet provajder takođe mora biti instaliran. Kao što možete vidjeti na sljedećoj ilustraciji, nakon ponovne upotrebe cmdleta Get-PackageProvider, provajder kojeg instaliramo bi se već trebao pojaviti na listi:

    Sada možemo generirati kompletnu listu svih paketa dostupnih kod dobavljača i prenijeti je u cmdlet Izvoz-CliXML da kreirate XML prikaz objekata i pohranite ih u XML datoteku. Imajte na umu da će se lista koju izvozite stalno mijenjati i da će se vremenom sve više i više paketa dodavati u spremišta koja koristite. U skladu s tim, ne zaboravite s vremena na vrijeme zamijeniti datoteku koju izvezete. Da biste izvezli listu paketa i sačuvali ovu listu u folderu C: \ TestPosh, potrebno je da pokrenete sledeću naredbu: Pronađite-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 sa izvršavanjem i XML datoteka se kreira na vašem računaru, uvezite je i, radi lakšeg pregleda, pomoću cjevovoda i naredbe GridView odgovoran za prikaz rezultata izvršenja naredbe u prozoru u obliku interaktivne tabele, možete vidjeti koji paketi će biti dostupni za instalaciju. Naravno, ovu listu paketa možete otvoriti koristeći bilo koju aplikaciju koja može obraditi XML datoteke, na primjer, koristeći isti Excel. Ova naredba, kao što možete vidjeti na sljedećoj ilustraciji, izgleda ovako: Import-CliXML C: \ TestPosh \ Test.xml | Out-GridView

    Pošto je provajder već instaliran, možete preći na sledeći deo ove procedure, odnosno na

    Instaliranje softvera pomoću PowerShell-a

    Prije instaliranja softverskih proizvoda, treba pogledati šta je već instalirano na računaru. Da biste izvršili ovaj zadatak, možete koristiti cmdlet Get-Package, koji vraća listu svih softverskih paketa instaliranih na lokalnom računaru koristeći OneGet ili druge alate za instalaciju aplikacija. Opciono, također možete pokrenuti cmdlet Get-Package i na udaljenim računarima tako što ćete ga pokrenuti kao dio Invoke-Command, Enter-PSSession ili skripte.

    Ako želite da dobijete informacije o određenom softveru, na primer, o instaliranim Microsoft Office 2013 proizvodima, možete koristiti parametar –Name zajedno sa ovom cmdlet-om sa odgovarajućom vrednošću, na primer, Get-Package -Naziv "office 2013"... Izlaz iz ovog cmdleta je vidljiv ispod:

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

    S obzirom na činjenicu da prije samog procesa instalacije moramo lokalizirati same pakete, trebali bismo koristiti mogućnosti cmdleta Pronađite-paket... Kao što ste primetili malo ranije, ovaj cmdlet vam omogućava da pretražujete instalacione pakete u izvorima paketa dostupnim na lokalnom računaru. U slučaju da ne koristite nikakve parametre sa ovom cmdlet-om, naredba će prikazati kompletnu listu svih aplikacija, kao što je ranije navedeno.

    Na primjer, prvo pokušajmo pronaći Adobe aplikacije koje su dostupne za instalaciju od provajdera Chocolatey kojeg smo dodali. Da biste to učinili, osim samog cmdleta, dovoljno je navesti parametar – Ime i unesite traženi softverski proizvod kao njegovu vrijednost. Budući da se naziv proizvoda može navesti iza riječi Adobe u instalacionim paketima, trebate unijeti naziv proizvoda na sljedeći način: Adobe * kao što je prikazano na sledećoj ilustraciji. Kao što možete vidjeti, OneGet modul je pronašao sljedeći instalacioni paket u spremištu: adobe-creative-cloud verzija 1.0. U osnovi, ovo je jedan od proizvoda koje tražite, što znači da ga treba instalirati. Da biste to učinili, kao što možete vidjeti i na sljedećoj ilustraciji, morate koristiti mogućnosti cmdleta Instalacijski paket... Da biste instalirali Creative Cloud, pokrenite sljedeću naredbu Install-Package -Naziv adobe-creative-cloud -Force gdje parametar Force, kao što je uobičajeno u PowerShell-u, poništava ograničenja koja sprječavaju izvršavanje naredbe sve dok promjene ne počnu kršiti sigurnosne zahtjeve. Izlaz ovih naredbi se može vidjeti na sljedećoj ilustraciji:

    Sada, nakon što je instaliran prvi softverski proizvod, pokušajmo potražiti određenu verziju Adobe Reader-a. Da biste to učinili, pored već dobro poznate naredbe Find-Package – Ime AdobeReader treba dodati parametar –Sve verzije koji vraća sve dostupne verzije paketa ili sve verzije paketa koje su u rasponu navedenom u opcijama MinimumVersion i MaximumVersion... Imajte na umu da ovaj parametar nije obavezan, jer pretraga u početku prikazuje najnoviju verziju softverskog proizvoda. Sada, od svih dostupnih verzija, treba da izaberemo onu koju treba instalirati na računar, npr. neka to bude verzija 2015.007.20033 ... da biste instalirali ovu konkretnu verziju čitača, slijedite naredbu Instalacijski paket - Naziv AdobeReader dodaj parametar –Obavezna verzija sa značenjem 2015.007.20033 koji definiše tačnu verziju paketa koji želite da instalirate. Također možete instalirati maksimalnu dostupnu verziju proizvoda dodavanjem parametra MaximumVersion sa odgovarajućom vrednošću. Izlaz ovih naredbi se može vidjeti na sljedećoj ilustraciji:

    Ako trebate instalirati najnoviju verziju softverskog proizvoda, a u isto vrijeme ne želite unositi više naredbi u PowerShell, možete generalizirati pretragu i instalaciju paketa pomoću cjevovoda. Na primjer, u slučaju instaliranja najnovije verzije uređivača teksta Notepad ++, možete pokrenuti sljedeću naredbu: Find-Package -Name NotepadPlusPlus | Instalacijski paket – Prisilno... Stoga tražite paket u spremištu i, ako se pronađe rezultat, odmah ga instalirate u tihom načinu rada. Proces instalacije ovog softverskog proizvoda prikazan je u nastavku:

    Sada, budući da prema gore navedenom 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 tačno kako se ovi paketi zovu u samom spremištu. Kao što sam ranije napisao, ovo se može provjeriti pomoću cmdleta Pronađite-paket | Out-GridView... Nakon što su imena paketa poznata, možete započeti samu instalaciju. Da biste to učinili, možete pokrenuti sljedeću naredbu: Find-Package -Naziv procexp, procmon, winrar | Instalacijski paket... U ovom primjeru, kao što možete vidjeti na sljedećoj ilustraciji, ne specificiram posebno parametar Force tako da možete obratiti pažnju na cijeli proces instaliranja više softverskih paketa u isto vrijeme.

    Čuvanje i uklanjanje programa

    Posljednje dvije cmdlet-a o kojima će biti riječi u ovom članku odgovorne su za spremanje instalacionog paketa i uklanjanje instaliranog programa. Počnimo sa štednjom.

    Da biste sačuvali instalacioni paket, možete koristiti sledeći cmdlet modula OneGet, odnosno modul Sačuvaj paket... Ovaj cmdlet vam omogućava da sačuvate pakete na vašem lokalnom računaru bez da ih instalirate. Prema zadanim postavkama, ovaj cmdlet zadržava najnoviju verziju softverskog proizvoda, ali ako dodate parametar trenutnom cmdletu AllVersions, na vašem računaru će biti sačuvane sve verzije izabranog programa smeštene u spremište. Štaviše, slično parametrima cmdlet-a za pronalaženje i instaliranje programa, pored spremanja svih verzija pomoću parametara -Maksimalna verzija i –Minimalna verzija, još uvijek možete odabrati raspon verzija paketa koje želite zadržati. Da sačuvate paket na vašem računaru, pored parametra Ime i, ako je potrebno, parametar odgovoran za verziju proizvoda, morate navesti parametar Put sa budućom lokacijom vašeg instalatera.

    Kao što možete vidjeti na sljedećoj ilustraciji, naredba Save-Package –Naziv Procexp –Putanja C: \ TestPoshće sačuvati najnoviju verziju Process Explorera u folderu C: \ TestPosh:

    Ako ste slučajno instalirali pogrešan paket, uvijek ga možete deinstalirati pomoću OneGet modula. Da biste to učinili, koristite cmdlet Deinstalacijski paket... Kao i kod ostalih cmdlet-a u ovom modulu, da biste deinstalirali program, morate navesti parametar Ime sa odgovarajućim imenom aplikacije, a takođe, da biste tiho deinstalirali, možete koristiti parametar Force. Na primjer, da biste uklonili prethodno instalirani WinRAR sa vašeg računara, morate pokrenuti sljedeću naredbu: Uninstall-Package –Naziv WinRAR –Force ispod:

    Zaključak

    U ovom članku saznali ste za jednu od karakteristika novog Microsoftovog operativnog sistema, naime, instaliranje softvera pomoću komandne ljuske Windows PowerShell. Rekao sam vam o samom OneGet modulu, o osnovnoj terminologiji koja se koristi uz ovu tehnologiju io tome šta su unaprijed instalirani dobavljači paketa. Naučili ste kako možete povezati dobavljača paketa treće strane na OneGet i kako možete pronaći, instalirati, sačuvati i deinstalirati softverske proizvode.

    Nadam se da su vam ove informacije bile korisne i da ste naučili nešto novo za sebe. Ako imate bilo kakvih pitanja o materijalu ovog članka - 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 na Windows 10, 9.9 od 10 na osnovu 18 ocjena

    Top srodni članci