FAQ POWERSHELL НА БЪЛГАРСКИ

By | April 11, 2015

translated-bulgaria


beta-v2-0


Концепция : Най-често задаваните въпроси за PowerShell.

Можете да използвате този списък по различни начини :

  • За да копирате / поставяте команди в скрипт
  • За да видите бързо синтаксиса на конкретна команда
  • За да подобрите техническите си познания
  • За да откриете нови команди
  • За да се подготвите за интервю за работа

Обновено
16 юли, 2015
Автор Steve Renard
Източник bulgarian.powershell-guru.com
Категории
75
Въпроси
610


ACL
Active Directory
Alias
Arrays
Browsers
Certificates
Characters
CIM
Comments
COM Objects
Compare
Computer
Credentials
CSV
Culture
Date
Drives
Environment
Errors
Event Viewer
Files
Folders
Format Operator (-f)
Functions
GPO
GUI
Hardware
Hashtables
Help
History
Jobs
Keyboard
Loops
Math
Memory
Messages
Modules
Microsoft Excel
Microsoft Exchange
Microsoft Outlook
Microsoft SharePoint
Networking
Openfiles
Operators
Parameters
Password
Powershell ISE
Powershell v5
Printers
Processes
PSObject
Quest
Random
RDP
Regedit
Regex
Remote
Restore
Scheduled Tasks
Search
SCCM
Services
SMTP
Snapins
Sounds
Static .NET Methods
Strings
System
Try/Catch
Variables
Symantec Vault
Windows 2012
Windows Azure
Windows Forms
WMI
XML

System

Как да определя моята версия на PowerShell?

Как да пусна Powershell в друга версия за обратна съвместимост?
powershell.exe -Version 2.0

Как да изискам минимална Powershell версия (3.0 и по-висока) в скрипт с PowerShell?
#Requires -Version 3.0

Как да получа административни права за скрипт с Powershell?

Как да проверя параметрите на скрипт с Powershell?
help -Name .\Get-ExchangeEnvironmentReport.ps1 -Full

Как да получа информация за текущия потребител с Powershell?
[Security.Principal.WindowsIdentity]::GetCurrent()

Как да създам, редактирам и презаредя профил с Powershell?

Как да направя пауза от 5 секунди / минути в скрипт с Powershell?
Start-Sleep -Seconds 5
Start-Sleep -Seconds 300 # 5 minutes

Как да стигна до последния boot time с Powershell?
(Get-CimInstance -ClassName win32_operatingsystem).LastBootUpTime

Как да получа ускорител на тип с Powershell?

Как да покажа стартирани програми с Powershell?

Как да деинсталирам приложения с Powershell?

Как да направя екранна снимка на целия екран или на активния прозорец с Powershell?
Take-ScreenShot -Screen -File 'C:\scripts\screenshot.png' -Imagetype JPEG
Repository : Take-ScreenShot

Как да получите броя на съобщения за MSMQ опашки с Powershell?

Как да се определи политиката на изпълнение с Powershell?

Как да създадете пряк път с Powershell?

Как да закача или извадя програма към/от лентата на задачите с Powershell?

Как да отворя Windows Explorer с Powershell?
[Diagnostics.Process]::Start('explorer.exe')
Invoke-Item -Path C:\Windows\explorer.exe

Как да добавя драйвери на устройства с Powershell?
Get-WmiObject -Class Win32_PnPSignedDriver
Get-WindowsDriver -Online -All
driverquery.exe

Как да създадете GUID с Powershell?

Как да стигнем до мястото на временната директория за текущия потребител с Powershell?
[System.IO.Path]::GetTempPath()

Как да се съедините директория и поддиректория в един единствен път с PowerShell?
Join-Path -Path C:\ -ChildPath \windows

Как да се изброят всички кратки команди “Get-*” с Powershell?
Get-Command -Verb Get

Как да добавя специални системни папки с Powershell?

Как да монтирам ISO / VHD файлове с Powershell?
Mount-DiskImage 'D:\ISO\file.iso' # ISO
Mount-DiskImage 'D:\VHD\file.vhd' # VHD

Как да се проверят .NET Framework версии инсталирани с Powershell?

Как да проверите дали .NET Framework версия 4.5 е инсталиран с Powershell?
(Get-ItemProperty -Path 'HKLM:\Software\Microsoft\NET Framework Setup\NDP\v4\Full' -EA 0).Version -like '4.5*'

Как да се пуска и спира препис (да се създаде регистър на сесия на Windows PowerShell) с Powershell?
Start-Transcript -Path 'C:\scripts\transcript.txt
Stop-Transcript

Как да променя текущата директория на определено място с Powershell?
Set-Location -Path 'C:\scripts'

Как да изчистите екрана с Powershell?
Clear-Host
cls # Alias

Как да промените резолюцията на дисплея с Powershell?
Set-DisplayResolution -Width 1280 -Height 1024 -Force # Windows 2012

Как да настроите Fullscreen прозорец с Powershell?
mode.com 300

Как да получите размери (ширина и височина) на снимка с Powershell?

Как да получите Windows код за регистрация с Powershell?

Perfmon

Как да получите текущата “% Processor Time” (среден) през последните 5 секунди (10 пъти) с Powershell?
(Get-Counter '\Processor(_total)\% Processor Time' -SampleInterval 5 -MaxSamples 10).CounterSamples.CookedValue

Assemblies

Как да заредите комплекти с Powershell?

Как да проверите текущите .NET възли заредени с Powershell?

Как да намерите GAC (Global Assembly Cache) пътека с Powershell?

Clipboard

Как да копирате резултата в клипборда с Powershell?

Как да получите съдържанието на клипборда с Powershell?
Add-Type -AssemblyName PresentationCore
[Windows.Clipboard]::GetText()

Hotfixes

Как да получите хотфиксовете, инсталирани с Powershell?
Get-HotFix -ComputerName $computer

Как да получите хотфиксовете инсталирани преди / след определена дата с Powershell?
Get-HotFix | Where-Object -FilterScript { $_.InstalledOn -lt ([DateTime]'01/01/2015') } # Before 01/01/2015
Get-HotFix | Where-Object -FilterScript {$_.InstalledOn -gt ([DateTime]'01/01/2015')} # After 01/01/2015

Как да проверите дали хотфикс е инсталиран с Powershell?
Get-HotFix -Id KB2965142

Как да получите хотфиксовете, инсталирани на дистанционен компютър с Powershell?
Get-HotFix -ComputerName $computer

Pagefile

Как да получите Pagefile информация с Powershell?
Get-WmiObject -Class Win32_PageFileusage | Select-Object -Property Name, CurrentUsage, AllocatedBaseSize, PeakUsage, InstallDate

Как да получите най-препоръчителния размер (MB) за Pagefile с Powershell?
[Math]::Truncate(((Get-WmiObject -Class Win32_ComputerSystem).TotalPhysicalMemory) / 1MB) * 1.5

Как да създадете Pagefile (4096 MB) на D: drive с Powershell?

Как да изтриете Pagefile на C: drive с Powershell?

Maintenance

Как да се провери фрагментацията на диск с Powershell?

Как да се провери дисковото пространство на дискове с Powershell?

Up


Files

Как да отворите файл с Powershell?
Invoke-Item -Path 'C:\scripts\file.txt'
.'C:\scripts\file.txt'

Как да се чете файл с Powershell?
Get-Content -Path 'C:\scripts\file.txt'
gc "C:\scripts\file.txt" # Alias

Как се пише изход към файл с Powershell?

Как да получите пълното име на текущия скриптов файл с Powershell?
$MyInvocation.MyCommand.Path

Как да декомпресирате / архивирани файлове с Powershell?

Как да декомпресирате / разархивирайте файлове с Powershell?

Как да видите файловете в ZIP архив с Powershell?
Add-Type -AssemblyName 'System.IO.Compression.Filesystem'
[System.IO.Compression.ZipFile]::OpenRead($fileZIP)

Как да се покаже размера на даден файл в KB с Powershell?
(Get-ChildItem -Path .\winsrv.dll).Length /1KB
(Get-ChildItem -Path .\winsrv.dll).Length /1MB
(Get-ChildItem -Path .\winsrv.dll).Length /1GB

Как да търсите файлове по-големи или по-малки от 1 GB с Powershell?

Как да се покаже името на файла, без удължаване с Powershell?
[System.IO.Path]::GetFileNameWithoutExtension('C:\Windows\system32\calc.exe') # Return calc

Как да се покаже разширение на файл с Powershell?
[System.IO.Path]::GetExtension('C:\scripts\file.txt') # Return .txt

Как да получите версията на даден файл с Powershell?

Как да получите хеш на файл Powershell?
(Get-FileHash $file).Hash

Как да получите MD5 / SHA1 контролна сума на файл с Powershell?
Get-FileHash $file -Algorithm MD5
Get-FileHash $file -Algorithm SHA1

Как да се покаже скритите файлове с Powershell?

Как да се провери дали даден файл има разширение с Powershell?

Как да се създаде файл само за четене с Powershell?
Set-ItemProperty -Path .\file.txt -Name IsReadOnly -Value $true

Как да променя LastWriteTime атрибут за миналата седмица за файл с Powershell?
Set-ItemProperty -Path .\file.txt -Name LastWriteTime -Value ((Get-Date).AddDays(-7))
If not working, use Nirsoft tool: BulkFileChanger.

Как да създадете нов файл с Powershell?
New-Item -ItemType File -Path 'C:\scripts\file.txt' -Value 'FirstLine'

Как да преименувате файл с Powershell?
Rename-Item -Path 'C:\scripts\file.txt' -NewName 'C:\scripts\powershellguru2.txt'

Как да bulk / batch преименувате множество файлове с Powershell?
Get-ChildItem -Path C:\scripts\txt | Rename-Item -NewName { $_.Name -replace ' ', '_' }

Как да изтриете файл с Powershell?
Remove-Item -Path 'C:\scripts\file.txt'

Как да се покажат 10-те най-нови редове на файл с Powershell?
Get-Content -Path 'C:\scripts\log.txt' -Tail 10

Как да се деблокират няколко файла от папка с Powershell?
Get-ChildItem -Path 'C:\scripts\Modules' | Unblock-File

Как да премахнете празните редове от файл с Powershell?
(Get-Content -Path file.txt) | Where-Object -FilterScript {$_.Trim() -ne '' } | Set-Content -Path file.txt

Как да се провери дали съществува файл с Powershell?

Как да получите най-новия / стария създаден файл в папка с Powershell?

Как да премахнете дубликати линии от файл с Powershell?

Как да получите файлове, създадени повече / по-малко от 1 месец в папка с Powershell?

Как да получите файлове, създадени повече / по-малко от 1 година в папка с Powershell?

Как да изнасяме стойността на променлива във файл с Powershell?
Set-Content -Path file.txt -Value $variable

Как да се преброят файлове (* .txt) в папка с Powershell?

Как да търсите низ в множество файлове с PowerShell?
Select-String -Path 'C:\*.txt' -Pattern 'Steve'

Как да се покаже първата / последната линия на файл с PowerShell?

Как да покажете определен номер на ред на файл с PowerShell?

Как да броим броя на редовете на файл с PowerShell?

Как да броим броя на символите и думи на файл с PowerShell?

Как да изтеглите файл с Powershell?
Invoke-WebRequest -Uri 'http://www.nirsoft.net/utils/searchmyfiles.zip' -OutFile 'C:\tools\searchmyfiles.zip'

Как да се покаже пълния път до файла с Powershell?
Resolve-Path -Path .\script.ps1 # Return C:\Scripts\script.ps1

Copy

Как да копирате един файл в папка с Powershell?
Copy-Item -Path 'C:\source\file.txt' -Destination 'C:\destination'

Как да копирате един файл на множество папки в PowerShell?

Как да копирате множество файлове към една папка в PowerShell?
Get-ChildItem -Path 'C:\source' -Filter *.txt | Copy-Item -Destination 'C:\destination'

Up


Active Directory

Domain & Forest

Computers

Groups

Organizational Unit (OU)

Users

Domain & Forest

Как да намерите глобалния каталог сървъри в Active Directory с Powershell?
[System.DirectoryServices.ActiveDirectory.Forest]::GetCurrentForest().GlobalCatalogs

Как да си намерим места в Active Directory с Powershell?
[System.DirectoryServices.ActiveDirectory.Forest]::GetCurrentForest().Sites

Как да намерите текущия домейн контролер с Powershell?

Как да намерите всички домейн контролери в домейн с Powershell?

Как да намерите неуспехите на AD репликация с Powershell?
Get-ADReplicationFailure dc02.domain.com # Windows 8 and 2012

Как да намерите tombstone lifetime на гората в Active Directory с Powershell?

Как да получите подробна информация за гората / домейна в Active Directory с Powershell?

Как да получите пътя на “Deleted Objects” в Active Directory с Powershell?
(Get-ADDomain).DeletedObjectsContainer

Как да включа AD Recycle Bin функцията в Active Directory с Powershell?

Как да възстановя AD Account от кошчето в Active Directory с Powershell?
Get-ADObject -Filter 'samaccountname -eq "powershellguru"' -IncludeDeletedObjects | Restore-ADObject

Как да намерите ролите FSMO с Powershell?

Как да се свържете с конкретен домейн контролер с Powershell?
Get-ADUser -Identity $user -Server 'serverDC01'

Как да получите текущия logon сървър с Powershell?

Как да се извърши “gpupdate” на компютър с Powershell?
Invoke-GPUpdate -Computer $computer -Force -RandomDelayInMinutes 0 # Windows 2012

Groups

Как да създадете нова група в Active Directory с Powershell?

Как да премахнете група от Active Directory с Powershell?
Remove-ADGroup -Identity 'PowershellGuru'

Как да добавите потребител към група в Active Directory с Powershell?
Add-ADGroupMember "Powershell Guru" -Members powershellguru

Как да отстраните потребител от група в Active Directory с Powershell?
Remove-ADGroupMember 'Powershell Guru' -Members powershellguru

Как да намерим празни групи (без членове) в Active Directory с Powershell?
Get-ADGroup -Filter * -Properties Members | Where-Object -FilterScript {-not $_.Members}

Как да преброим празни групи (без членове) в Active Directory с Powershell?
(Get-ADGroup -Filter * -Properties Members | Where-Object -FilterScript {-not $_.Members}).Count

Как да видим членовете на групата в Active Directory с Powershell?

Как да видим членовете на една група с рекурсивни членове в Active Directory с Powershell?

Как да се преброят членовете на група, с / без рекурсивни членове в Active Directory с Powershell?

Users

Как да използвате wildcard през филтъра на “Get-ADUser” в Active Directory с Powershell?

Как да се преместите потребител на друг OU в Active Directory с Powershell?
Move-ADObject -Identity $dn -TargetPath 'OU=myOU,DC=domain,DC=com'

Как да намерите всички членове, които са (вложени) за потребител с Powershell?
Get-ADGroup -LDAPFilter "(member:1.2.840.113556.1.4.1941:=$($dn))"

Как да получите членовете (кратко име / пресечен) за потребител с Powershell?
(Get-ADUser $user -Properties MemberOf).MemberOf | ForEach-Object -Process {($_ -split ',')[0].Substring(3)} | Sort-Object

Как да преименувате името (FullName), DISPLAYNAME, GivenName (FirstName) и фамилия (LastName) за потребителски акаунт в Active Directory с Powershell?

Как да се промени описанието, офис и телефонния номер за потребителски акаунт в Active Directory с Powershell?
Set-ADUser $samAccountName -Description 'IT Consultant' -Office 'Building B' -OfficePhone '12345'

Как да се определи датата на изтичане на срока на “31.12.2015” или “Никога” за потребителски акаунт в Active Directory с Powershell?

Как да отключите един потребителски акаунт в Active Directory с Powershell?
Unlock-ADAccount $samAccountName

Как да включите / изключите потребителски акаунт в Active Directory с Powershell?

Как да премахнете потребителски акаунт в Active Directory с Powershell?
Remove-ADUser $samAccountName

Как да възстановите парола за потребителски акаунт в Active Directory с Powershell?

Как да възстановите парола за няколко потребителски акаунти (дълбочина) в Active Directory с Powershell?

Как да се намери собственик на даден файл в Active Directory с Powershell?

Как да намерите OU (организационна единица) за потребител в Active Directory с Powershell?
[regex]::match("$((Get-ADUser $user -Properties DistinguishedName).DistinguishedName)",'(?=OU=)(.*\n?)').value

Как да намерите спрени потребителски акаунти в Active Directory с Powershell?

Как да намерите изтекли потребителски акаунти в Active Directory с Powershell?
Search-ADAccount -AccountExpired

Как да намерите заключени потребителски акаунти в Active Directory с Powershell?
Search-ADAccount -LockedOut

Как да намерите SID на потребителски акаунт в Active Directory с Powershell?
(Get-ADUser $user -Properties SID).SID.Value

Как да конвертирате потребителско име на SID в Active Directory с Powershell?

Как да конвертирате SID в потребителско име в Active Directory с Powershell?

Как да се раздели уникалното име на потребител и парола за Active Directory с Powershell?

Как да намерите датата на създаване / промяна на потребителски акаунт с Active Directory с Powershell?
Get-ADUser -Identity $user -Properties whenChanged, whenCreated | Format-List -Property whenChanged, whenCreated

Как да се покажат избирателните и задължителни качества за клас “потребител” с Active Directory с Powershell?

Как да получите LDAP път на потребителите с Active Directory с Powershell?

Как да се промени CN (Canonical Name) за потребител с Active Directory с Powershell?
Rename-ADObject $((Get-ADUser $user -Properties DistinguishedName).DistinguishedName) -NewName 'Steve Renard'

Как да получите Organizational Unit (OU) майка на потребител с Active Directory с Powershell?

Как да стигнем до собственика на даден потребител (който е създал акаунт) с Active Directory с Powershell?

Как да конвертирате атрибута pwdLastSet за потребител с Active Directory с Powershell?

Computers

Как да тествате защитен канал между локалния компютър и домейн с Powershell?
Test-ComputerSecureChannel

Как да поправите сигурния канал между локалния компютър и домейн с Powershell?
Test-ComputerSecureChannel -Repair

Как да изключите компютърен акаунт в Active Directory с Powershell?
Disable-ADAccount $computer

Как да намерите компютри с конкретната операционна система в Active Directory с Powershell?

Organizational Unit (OU)

Как да се създаде организационна единица в Active Directory с Powershell?
New-ADOrganizationalUnit -Name 'STEVE' -Path 'DC=domain,DC=com'

Как да получите подробности за организационна единица в Active Directory с Powershell?
Get-ADOrganizationalUnit 'OU=STEVE,DC=domain,DC=com' -Properties *

Как да променя описанието на организационна единица в Active Directory с Powershell?
Set-ADOrganizationalUnit 'OU=STEVE,DC=domain,DC=com' -Description 'My description'

Как да включите / изключите организационна единица от случайно изтриване на Active Directory с Powershell?

Как да се включи случайното изтриване на цялата организационна единица в Active Directory с Powershell?

Как да изтриете организационна единица, защитена от случайно изтриване в Active Directory с Powershell?

Как да конвертирате DistinguishedName на организационна единица (OU) да CanonicalName с Active Directory с Powershell?

Как да добавя празни организационни единици с Powershell?

Как да намерите мениджър на група с Powershell?
(Get-ADGroup $dn -Properties Managedby).Managedby

Up


Regex (Regular Expression)

Как да извлече IP адрес v4 (80.80.228.8) с Regex с Powershell?
$example = 'The IP address is 80.80.228.8'
$ip = [regex]::match($example,'\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b').value

Как да извлече MAC адрес (C0-D9-62-39-61-2D) с разделител “-” с Regex с Powershell?
$example = 'The MAC address is C0-D9-62-39-61-2D'
$mac = [regex]::match($example,'([0-9A-F]{2}[-]){5}([0-9A-F]{2})').value

Как да извлече MAC адрес (C0: D9: 62: 39: 61: 2D) с разделител “:” с Regex с Powershell?
$example = 'The MAC address is C0:D9:62:39:61:2D'
$mac = [regex]::match($example,'((\d|([a-f]|[A-F])){2}:){5}(\d|([a-f]|[A-F])){2}').value

Как да извлечете дата (2.10.2015) с Regex с Powershell?
$example = 'The date is 10/02/2015'
$date = [regex]::match($example,'(\d{2}\/\d{2}\/\d{4})').value

Как да извлече URL (www.powershell-guru.com) с Regex с Powershell?
$example = 'The URL is www.powershell-guru.com'
$url = [regex]::match($example,'[a-z]+[:.].*?(?=\s)').value

Как да извлечете имейл (user@domain.com) с Regex с Powershell?
$example = 'The email is user@domain.com'
$email = [regex]::match($example,'(?i)\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b').value

Как да извлечете “гуру” от примера низ с Regex с Powershell?
$example = 'www.powershell-guru.com'
[regex]::match($example,'(?<=-)(.*\n?)(?=.com)').value

Как да извлечете “guru.com” от примера низ с Regex с Powershell?
$example = 'www.powershell-guru.com'
[regex]::match($example,'(?<=-)(.*\n?)(?<=.)').value

Как да извлечете “powershell-guru.com” от примера низ с Regex с Powershell?
$example = 'www.powershell-guru.com'
[regex]::match($example,'(?<=www.)(.*\n?)').value

Как да извлечете “123” от примера низ с Regex с Powershell?
$example = 'Powershell123'
[regex]::match($example,'(\d+)').value

Как да извлечете “$” (знак за долар) от примера низ с Regex с Powershell?
$example = 'Powershell`$123'
[regex]::match($example,'(\$)').value

Как да се замени символ (* .com) с друг (* .fr) в низ с Regex с Powershell?
$example = 'www.powershell-guru.com'
[regex]::Replace($example, '.com','.fr')

Как да излезе от низ с Regex с Powershell?
[regex]::Escape('\\server\share')

Up


Memory

Как да направите колекция от паметта от garbage collector с Powershell?
[System.GC]::Collect()
[System.GC]::WaitForPendingFinalizers()

Как да получите размера RAM на компютър с Powershell?

Up


Date

Как да получите текущата дата с Powershell?
Get-Date
[Datetime]::Now

Как да се покаже датата в различни формати с Powershell?

Как да конвертирате дата йъм String с Powershell?

Как да конвертирате дата (String) към дата (дата) с Powershell?

Как да се изчисли разликата (брой дни, часове, минути или секунди) между две дати с Powershell?
(New-TimeSpan -Start $dateStart -End $dateEnd).Days
(New-TimeSpan -Start $dateStart -End $dateEnd).Hours
(New-TimeSpan -Start $dateStart -End $dateEnd).Minutes
(New-TimeSpan -Start $dateStart -End $dateEnd).Seconds

Как да се сравнят две дати с Powershell?
(Get-Date 2015-01-01) -lt (Get-Date 2015-01-30) # True
(Get-Date 2015-01-01) -gt (Get-Date 2015-01-30) # False

Как да сортирате множество дати като за Datetime с Powershell?
$arrayDate | Sort-Object -Property {$_ -as [Datetime]}

Как да се пуска и спира хронометър с Powershell?
$chrono = [Diagnostics.Stopwatch]::StartNew()
$chrono.Stop()
$chrono

Как да получите текущия ден от седмицата с Powershell?
(Get-Date).DayOfWeek #Sunday

Как да видим вчерашната дата с Powershell?
(Get-Date).AddDays(-1)

Как да получите броя на дните в месеца (през февруари 2015 г.), с Powershell?
[DateTime]::DaysInMonth(2015, 2)

Как да разбера дали е високосна година с Powershell?
[DateTime]::IsLeapYear(2015)

Как да добавя часови зони с Powershell?
[System.TimeZoneInfo]::GetSystemTimeZones()

Up


Networking

Как да се кодират (до формат ASCII) и декодират URL адреси с Powershell?

Какви са еквивалентите на местни мрежови команди в Powershell?

Как да получите IP адреси с Powershell?
Get-NetIPAddress # Windows 8.1 & Windows 2012
Get-NetIPConfiguration # Windows 8.1 & Windows 2012

Как да изключите IP адрес v6 (IPv6) с Powershell?

Как да валидирате IP адрес v4 (IPv4) с Powershell?
if([ipaddress]'10.0.0.1'){'validated'}

Как да намерите външен IP адрес с Powershell?

Как да откриете Hostname от IP адрес с Powershell?
([System.Net.Dns]::GetHostEntry($IP)).Hostname

Как да намерите IP адреса, от Hostname с Powershell?
([System.Net.Dns]::GetHostAddresses($computer)).IPAddressToString

Как да намерите FQDN от Hostname с Powershell?
[System.Net.Dns]::GetHostByName($computer).HostName

Как да намеря конфигурацията на мрежата (IP, Subnet, Gateway и DNS) с Powershell?

Как да намерите адреса MAC с Powershell?
Get-CimInstance win32_networkadapterconfiguration | Select-Object -Property Description, Macaddress
Get-WmiObject -Class win32_networkadapterconfiguration | Select-Object -Property Description, Macaddress

Как да пингнете компютър с Powershell?

Как да проверите дали компютърът е свързан към Интернет с Powershell?

Как да извършите Whois справка за даден уебсайт с PowerShell?
$whois = New-WebServiceProxy 'http://www.webservicex.net/whois.asmx?WSDL'
$whois.GetWhoIs('powershell-guru.com')

Как да получите подробна информация за публичния IP (геолокация) с Powershell?

Как да се провери дали даден порт е отворен / затворен с Powershell?
New-Object -TypeName Net.Sockets.TcpClient -ArgumentList $computer, 135

Как да извършите Tracert с Powershell?
Test-NetConnection www.google.com -TraceRoute

Как да се направите профил с домашна мрежа с Powershell?
Get-NetAdapter | Format-Table -Property Name, InterfaceDescription, ifIndex -AutoSize # Windows 8.1
Set-NetConnectionProfile -InterfaceIndex 6 -NetworkCategory Private

Как да покажете TCP порт връзките с Powershell?
netstat.exe -ano
Get-NetTCPConnection #Windows 8 and 2012

Как да съкратите дълъг URL с Powershell?
$url = 'www.powershell-guru.com'
$tiny = Invoke-RestMethod -Uri "http://tinyurl.com/api-create.php?url=$url"

Как да получите настройките за Proxy с Powershell?
Get-ItemProperty -Path HKCU:"Software\Microsoft\Windows\CurrentVersion\Internet Settings"

DNS

Как да се провери DNS кеша на локалния компютър с Powershell?
ipconfig.exe /displaydns
Get-DnsClientCache #Windows 8 and 2012

Как да изчистите DNS кеша на локалния компютър с Powershell?
ipconfig.exe /flushdns
Start-Process -FilePath ipconfig -ArgumentList /flushdns -WindowStyle Hidden
Clear-DnsClientCache #Windows 8 and 2012

Как да изчистите DNS кеша на дистанционни компютри с Powershell?
Invoke-Command -ScriptBlock {Clear-DnsClientCache} -ComputerName computer01, computer02

Как да четем файла Hosts с Powershell?
Get-Content -Path 'C:\Windows\system32\drivers\etc\hosts'

Up


Password

Как да се генерираме случайна парола с Powershell?
[Reflection.Assembly]::LoadWithPartialName('System.Web')
[System.Web.Security.Membership]::GeneratePassword(30,2)

Как да смените паролата за администратор на отдалечен сървър с Powershell?
$admin = [ADSI]('WinNT://server01/administrator,user')
$admin.SetPassword($password)
$admin.SetInfo()

Как да намерите датата на изтичане на паролата на акаунт в Active Directory с Powershell?

Up


Printers

Как да се изброят всички принтери за определен сървър с Powershell?
Get-WmiObject -Query 'Select * From Win32_Printer' -ComputerName $computer

Как да се изброят всички портове за определен сървър с Powershell?
Get-WmiObject -Class Win32_TCPIPPrinterPort -Namespace 'root\CIMV2' -ComputerName $computer

Как да променя коментар / място на принтер с Powershell?

Как да направим purge (отмяна на всички работи) за принтер с Powershell?
$printer = Get-WmiObject -Class win32_printer -Filter "Name='HP Deskjet 2540 series'"
$printer.CancelAllJobs()

Как да отпечатате тестова страница на принтер с Powershell?
$printer = Get-WmiObject -Class win32_printer -Filter "Name='HP Deskjet 2540 series'"
$printer.PrintTestPage()

Как да получите печатни опашки за принтери с Powershell?

Up


Regedit

Read

Как да покажа registry hives с Powershell?
Get-ChildItem -Path Registry::

Как да получите стойности в системния регистър и стойностни типове с Powershell?

Как да се покаже ключ на системния регистър с Powershell?

Как да покажа ключови подключове на системния регистър в рекурсивен начин с Powershell?
Get-ChildItem -Path 'HKLM:\SYSTEM' -Recurse -ErrorAction SilentlyContinue

Как да намерите подключове с конкретно име с Powershell?
Get-ChildItem -Path 'HKLM:\SOFTWARE' -Include *Plugin* -Recurse -ErrorAction SilentlyContinue

Как да се върне само името на подключове на системния регистър с Powershell?
(Get-ChildItem -Path 'HKLM:\SYSTEM').Name # Return HKEY_LOCAL_MACHINE\SYSTEM\ControlSet
Get-ChildItem -Path 'HKLM:\SYSTEM' -Name # Return ControlSet

Как да видя стойностите в системния регистър с Powershell?
Get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion'

Как да се чете определена стойност на системния регистър с Powershell?
(Get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion').ProductName

Как да четем конкретна стойност на регистър на отдалечен компютър с Powershell?

Write

Как да създадете нов ключ на системния регистър с Powershell?
New-Item -Path 'HKCU:\Software\MyApplication'

Как да се създаде стойност на регистър с Powershell?
New-ItemProperty -Path 'HKCU:\Software\MyApplication' -Name 'Version' -Value '1.0'

Как да променя съществуваща стойност на регистър с Powershell?
Set-ItemProperty -Path 'HKCU:\Software\MyApplication' -Name 'Version' -Value '2.0'

Delete

Как да изтриете стойност на системния регистър с Powershell?
Remove-ItemProperty -Path 'HKCU:\Software\MyApplication' -Name 'Version'

Как да изтриете ключ на системния регистър с Powershell?
Remove-Item -Path 'HKCU:\Software\MyApplication' -Force

Test

Как да проверите дали съществува ключ на системния регистър с Powershell?
Test-Path -Path 'HKCU:\Software\MyApplication'

Как да проверите дали съществува стойност на регистър с Powershell?
(Get-Item -Path 'HKCU:\Software\MyApplication').GetValueNames() -contains 'Version'

Up


Strings

Как да премахнете символи за празни пространства от началото на низ с Powershell?
$string = ' PowershellGuru'
$string = $string.TrimStart()

Как да премахнете символи за празни пространства от края на низ с Powershell?
$string = 'PowershellGuru '
$string = $string.TrimEnd()

Как да премахнете символи за празни пространства (начало и край) на низ с Powershell?
$string = ' PowershellGuru '
$string = $string.Trim()

Как да конвертирате низ в главни букви с Powershell?
$string = 'powershellguru'
$string = $string.ToUpper()

Как да конвертирате низ към малки букви с Powershell?
$string = 'POWERSHELLGURU'
$string = $string.ToLower()

Как да изберете подниза “Powershell” на низа “PowershellGuru” с Powershell?
$string.Substring(0,10)

Как да изберете подниза “Guru” на низа “PowershellGuru” с Powershell?
$string.Substring(10)

Как да изберете броя “123” на “Powershell123Guru” с Powershell?
$string = 'Powershell123Guru'
[regex]::match($string,'(\d+)').value

Как да получите на нулева база индексът на “Гуру” на низ “PowershellGuru” с Powershell?
$string.IndexOf('Guru') # 10

Как да се провери дали даден низ е NULL или празен с Powershell?
$string = $null
$string = ''
[string]::IsNullOrEmpty($string)

Как да се провери дали даден низ е NULL, празен или се състои само от символи за празни пространства с Powershell?
$string = $null
$string = ''
$string = ' '
[string]::IsNullOrWhiteSpace($string)

Как да се провери дали даден низ съдържа определена буква с Powershell?
$string = 'PowershellGuru'
$string.Contains('s')
[regex]::match($string,'s').Success

Как да се върне на дължината на низ с Powershell?
$string.Length

Как да се слеят два низа с Powershell?

Как да съответстват една или няколко скоби “[ ]” в низ с Powershell?
$string = '[PowershellGuru]'
$string -match '\[' # Only 1
$string -match '\[(.*)\]' # Several

Как да съответстват една или няколко скоби “()” в низ с Powershell?
$string = '(PowershellGuru)'
$string -match '\(' # Only 1
$string -match '\((.*)\)' # Several

Как да съответстват една или няколко фигурни скоби “{}” в низ с Powershell?
$string = '{PowershellGuru}'
$string -match '\{' # Only 1
$string -match '\{(.*)\}' # Several

Как да съответстват една или няколко ъглови скоби “& LT; & GT;” в низ с Powershell?
$string = ''
$string -match '\<' # Only 1
$string -match "\<(.*)\>" # Several

Как да съответстват малки букви (abc) в низ с Powershell?
$string = 'POWERSHELLGURU'
$string -cmatch "^[a-z]*$" #False

Как да съответстват големи букви (ABC) в низ с Powershell?
$string = 'powershellguru'
$string -cmatch "^[A-Z]*$" #False

Как да съвпадат “[р” (стр малки букви) в низ с Powershell?
$string = '[powershellGuru]'
$string -cmatch '\[[a-z]\w+' #True

Как да съвпадат “[P” (P главни букви) в низ с Powershell?
$string = '[PowershellGuru]'
$string -cmatch '\[[A-Z]\w+' #True

Как да се замени ред с друг ред с Powershell?
$a = 'Line A'
$b = 'Line B'
$a = $a -replace $a, $b

Как да конвертирате операция разделение в низ (процент) с Powershell?
(1/2).ToString('P')

Как да сортирате низове, съдържащи номера с Powershell?

Как да изберете последната дума на изречение с Powershell?
$sentence = 'My name is Steve Renard'
$sentence.Split(' ')[-1] # Returns Renard

Как да получите най-голямата думата в изречение с Powershell?
$sentence = 'My name is Steve Renard'
$sentence.Split(' ') | Sort-Object -Property Length | Select-Object -Last 1 # Returns Renard

Как да преброим колко пъти низ е присъствал в едно изречение с Powershell?
$sentence = 'steve steve steve renard'
[regex]::Matches($sentence, 'steve').Count # Returns 3

Как да копирате всеки знак в низ до даден масив от символи с Powershell?

Как да конвертирате първата буква да е главна буква на низ с Powershell?

Как да местите (наляво или надясно) низ с Powershell?

Как да се кодират и декодират низове до Base64 с Powershell?

Как да конвертирате множество в двоично и от двоичен с Powershell?

Как да се върне само последната папка в пътека с Powershell?

Как да се върне само последния елемент от пътя с Powershell?

Up


Math

Как да добавя методите на класа System.Math с Powershell?
[System.Math] | Get-Member -Static -MemberType Method

Как да се върне абсолютната стойност с Powershell?
[Math]::Abs(-12) #Returns 12
[Math]::Abs(-12.5) # Returns 12.5

Как да се върне ъгъла, чийто синус е определено число с Powershell?
[Math]::ASin(1) #Returns 1,5707963267949

Как да се върне ceiling с Powershell?
[Math]::Ceiling(1.4) #Returns 2
[Math]::Ceiling(1.9) #Returns 2

Как да се върне floor с Powershell?
[Math]::Floor(1.4) #Returns 1
[Math]::Floor(1.9) #Returns 1

Как да се върне естествения (base e) логаритъм на определено число с Powershell?
[Math]::Log(4) #Returns 1,38629436111989

Как да се върне base 10 логаритъм на определено число с Powershell?
[Math]::Log10(4) #Returns 0,602059991327962

Как да се върне максимум на две стойности с Powershell?
[Math]::Max(2,4) #Returns 4
[Math]::Max(-2,-4) #Returns -2

Как да се върне минимум на две стойности с Powershell?
[Math]::Min(2,4) #Returns 2
[Math]::Max(-2,-4) #Returns -4

Как да се върне число, повдигнато на степен с Powershell?
[Math]::Pow(2,4) #Returns 16

Как да се върне десетично число до най-близкото цяло число с Powershell?
[Math]::Round(3.111,2) #Returns 3,11
[Math]::Round(3.999,2) #Returns 4

Как да се върне цялата част на определено десетично числа с Powershell?
[Math]::Truncate(3.111) #Returns 3
[Math]::Truncate(3.999) #Returns 3

Как да се върне корен квадратен от определено число с Powershell?
[Math]::Sqrt(16) #Returns 4

Как да се върне константата PI с Powershell?
[Math]::Pi #Returns 3,14159265358979

Как да се върне естествената логаритмична база (constant e) с Powershell?
[Math]::E #Returns 2,71828182845905

Как да проверите дали дадено число е четно или нечетно с Powershell?
[bool]($number%2)

Up


Hashtables

Как да създадете празна Hashtable с Powershell?
$hashtable = @{}
$hashtable = New-Object -TypeName System.Collections.Hashtable

Как да създадете Hashtable с предмети с Powershell?

Как да създадете Hashtable сортирана по ключ / име (ordered dictionary) с предмети с Powershell?

Как да добавите елементи (с ключ-стойност двойка) до хеш таблица с Powershell?
$hashtable.Add('Key4', 'Value4')

Как да получите конкретна стойност на Hashtable с Powershell?

Как да стигнем до минималната стойност на Hashtable с Powershell?

Как да получите максимална стойност на Hashtable с Powershell?

Как да променя елементи в Hashtable с Powershell?
$hashtable.Set_Item('Key1', 'Value1Updated')

Как да премахнете елементи в Hashtable с Powershell?
$hashtable.Remove('Key1')

Как да изчистите Hashtable с Powershell?
$hashtable.Clear()

Как да се провери наличието на специфичен ключ / стойност в Hashtable с Powershell?
$hashtable.ContainsKey('Key3')
$hashtable.ContainsValue('Value3')

Как да сортирате по ключ / стойност в Hashtable с Powershell?
$hashtable.GetEnumerator() | Sort-Object -Property Name
$hashtable.GetEnumerator() | Sort-Object -Property Value -Descending

Up


Arrays

Как да създадете празен масив с Powershell?
$array = @()
$array = [System.Collections.ArrayList]@()

Как да се създаде масив с елементи с Powershell?
$array = @('A', 'B', 'C')
$array = 'A', 'B', 'C'
$array = 'a,b,c'.Split(',')
$array = .{$args} a b c
$array = echo a b c

Как да се добавят стойности към масив с Powershell?
$array += 'D'
[void]$array.Add('D')

Как да се промени елемент в масив с Powershell?
$array[0] = 'Z' # 1st item[0]

Как да проверите размера на масив с Powershell?
$array = 'A', 'B', 'C'
$array.Length # Returns 3

Как да изтегля един артикул / няколко / всички елементи в един масив с Powershell?
$array = @('A', 'B', 'C')
$array[0] # One item (A)
$array[0] + $array[2] # Several items (A,C)
$array # All items (A,B,C)

Как да премахнете празните позиции в масив с Powershell?
$array = @('A', 'B', 'C', '')
$array = $array.Split('',[System.StringSplitOptions]::RemoveEmptyEntries) | Sort-Object # A,B,C

Как да се провери дали съществува елемент в масив с Powershell?
$array = @('A', 'B', 'C')
'A' | ForEach-Object -Process {$array.Contains($_)} # Returns True
'D' | ForEach-Object -Process {$array.Contains($_)} # Returns False

Как да намерите номер на индекса на елемент от масив с Powershell?
$array = @('A', 'B', 'C')
[array]::IndexOf($array,'A') # Returns 0

Как да се обърне реда на елементите в масив с Powershell?
$array = @('A', 'B', 'C')
[array]::Reverse($array) # C,B,A

Как да се генерира случаен елемент от масив с Powershell?
$array | Get-Random

Как да сортирате масив във възходящ / низходящ начин с Powershell?
$array = @('A', 'B', 'C')
$array | Sort-Object # A,B,C
$array | Sort-Object -Descending # C,B,A

Как да брои броя на елементите в масив с Powershell?
$array.Count

Как да добавите масив в друг масив с Powershell?
$array1 = 'A', 'B', 'C'
$array2 = 'D', 'E', 'F'
$array3 = $array1 + $array2 # A,B,C,D,E,F

Как да намерите дубликати от масив с Powershell?
$array = 'A', 'B', 'C', 'C'
($array | Group-Object | Where-Object -FilterScript {$_.Count -gt 1}).Values # Returns C

Как да премахнете дубликати от масив с Powershell?
$array = 'A', 'B', 'C', 'C'
$array = $array | Select-Object -Unique
$array # Returns A,B,C

Как да се създаде масив с елементи като се започне с префикс (“user01”, “user02”, …, “user10”) с Powershell?
$array = 1..10 | ForEach-Object -Process { "user$_" }

Up


ACL

Как да добавя ACL на потребителя АД с Powershell?
(Get-Acl -Path "AD:\$dn").Access

Как да добавя ACL на папка с Powershell?
(Get-Acl -Path C:\scripts).Access

Как да добавя специфични ACL permission entries (потребители или групи) на даден потребител АД с Powershell?

Up


Variables

Кои са най-често срещаните типове данни в Powershell?

Как да намерите минималните и максималните стойности за някои тип променливи с Powershell?

Как да тествате Типът данни с Powershell?

Как да създадете Here-String променлива с Powershell?

Как да се създаде променлива с Powershell?
$powershellGuru = 'Hello'

Как да се създаде константна променлива с Powershell?
Set-Variable -Name powershellGuru -Value 2015 -Option Constant

Как да създадем глобална променлива с Powershell?
$Global:powershellGuru = 'Hello' # Note : creating global variables is not recommended

Как да четем променлива с Powershell?
$powershellGuru = 'Hello' # Create
$powershellGuru # Read
Get-Variable -Name powershellGuru -ValueOnly # Read

Как да се провери вида на променлива с Powershell?
$powershellGuru.GetType()

Как да намерите променливите в глобалния обхват с Powershell?
Get-Variable -Scope Global

Как да получите конкретни променливи по име с Powershell?
Get-Variable -Include *Preference -Exclude W*

Как да се определи конкретен тип данни към променлива с Powershell?
[int64]$variable = 100
[string]$variable = 'PowershellGuru'

Как да се инициализира множество променливи на една и съща стойност, с Powershell?
$a = $b = $c = $d = $e = 0

Какъв е псевдонимът за променливата “$ _” с Powershell?
Get-Process | Where-Object -FilterScript {$_.Handles -gt 1000} # Using $_
Get-Process | Where-Object -FilterScript {$PSItem.Handles -gt 1000} # Using $PSItem (since version 3)

Как да премахнете променливи с име започва с “count” с Powershell?
Remove-Variable -Name count*

Как да получите местните променливи с Powershell?
Get-ChildItem -Path Env:

Как да получите нPath Environmental променлива ред по ред с Powershell?
($env:Path) -replace(';', "`n")
[Environment]::GetEnvironmentVariable('Path') -replace(';', "`n")

Как да добавите нов път (пр: C: \SysinternalsSuite) към променливата Path Environmental Variable с Powershell?
$env:Path += ';C:\SysinternalsSuite'
$env:Path = $env:Path + ';C:\SysinternalsSuite'

Как да свържем променливи Powershell?
$a = 'Powershell'
$b = '- Guru'
$c = $a + $b

Как да използвате ErrorVariable с Powershell?
Get-ChildItem -Path 'C:\PerfLogs' -ErrorAction SilentlyContinue -ErrorVariable AccessDenied
$AccessDenied | ForEach-Object -Process {$_.Exception}
$AccessDenied | ForEach-Object -Process {$_.TargetObject}

Как да включите / изключите еквивалента на “Option Explicit” (VBScript: изисква променлива да бъде обявена) с Powershell?

Up


Static .NET Methods

Как да получите статични членове с Powershell?
[DateTime] | Get-Member -Static

Up


Sounds

Как се пусне звуковия сигнал beep с Powershell?
[System.Console]::Beep()

Как се пусне звука на asterisk с Powershell?
[System.Media.SystemSounds]::Asterisk.Play()

Как се пусне звука exclamation с Powershell?
[System.Media.SystemSounds]::Exclamation.Play()

Как да получите наличните звуци с Powershell?
[System.Media.SystemSounds] | Get-Member -Static

Как се пуска WAV звук с Powershell?
$soundPlayer = New-Object -TypeName System.Media.SoundPlayer -ArgumentList "$env:windir\Media\Ringout.wav"
$soundPlayer.Play()
или
$soundPlayer.PlayLooping()
$soundPlayer.Stop()

Как да активирате текст въвеждан с говор с Powershell?
Add-Type -AssemblyName System.Speech
$speech = New-Object -TypeName System.Speech.Synthesis.SpeechSynthesizer
$speech.Speak('Hello PowershellGuru')

Up


XML

Как се четат XML файл с Powershell?
[xml]$sitemap = Get-Content -Path .\sitemap.xml
$sitemap.urlset.url

Как да експортирате данни като XML файл с Powershell?
Get-Process | Export-Clixml -Path C:\scripts\processes.xml

Как да импортирате данни от файл CLIXML с Powershell?
$importProcesses = Import-Clixml -Path C:\scripts\processes.xml

Up


GUI

Как да се създаде основен GUI (Windows Forms) с Powershell?