diff --git a/README.md b/README.md index fcafff0..c48828e 100644 --- a/README.md +++ b/README.md @@ -22,3 +22,61 @@ `tnc $srv -CommonTCPPort WINRM # HTTP,RDP,SMB` \ `tnc ya.ru –TraceRoute -Hops 2 # TTL=2` \ `tnc ya.ru -DiagnoseRouting` # маршрутизация до хоста, куда (DestinationPrefix: 0.0.0.0/0) через (NextHop: 192.168.1.254) + +### ipconfig +`Get-NetIPConfiguration` \ +`Get-NetAdapter` \ +`Get-NetAdapterAdvancedProperty` \ +`Get-NetAdapterStatistics` + +### Route +`Get-NetRoute` + +### Netstat +`Get-NetTCPConnection -State Established,Listen | where LocalAddress -match "192.168"` + +### Hash +`Get-Filehash -Algorithm SHA256 "$env:USERPROFILE\Documents\RSA.conf.txt"` + +### Clipboard +`Set-Clipboard $srv` скопировать в буфер обмена \ +`Get-Clipboard` вставить + +### Array +`$srv = @("server-01", "server-02")` создать массив \ +`$srv += @("server-03")` добавить в массив новый элемент \ +`$srv.Count` отобразить кол-во элементов в массиве \ +`Out-String` построчный вывод + +### Index +`$srv[0]` вывести первое значение элемента массива \ +`$srv[0] = Name` замена элемента в массиве \ +`$srv[0].Length` узнать кол-во символов первого значения в массиве \ +`$srv[10..100]` срез + +### PSCustomObject +`$obj = @()` \ +`$obj += [PSCustomObject]@{User = $env:username; Server = $env:computername}` медленный метод добавления, в каждой интерации перезаписывается массив и коллекция становится фиксированного размера (Collection was of a fixed size) + +`$Collections = New-Object System.Collections.Generic.List[System.Object]` \ +`$Collections.Add([PSCustomObject]@{User = $env:username; Server = $env:computername})` + +`Get-Service | Select Name,DisplayName,Status,StartType | Export-csv -path "$home\Desktop\Get-Service.csv" -Append -Encoding Default` экспортировать в csv (-Encoding UTF8) \ +`Import-Csv "$home\Desktop\Get-Service.csv" -Delimiter ","` импортировать массив + +### Pipeline +`$obj | Add-Member -MemberType NoteProperty -Name "Type" -Value "user" -Force` добавление объкта вывода NoteProperty \ +`$obj | Add-Member -MemberType NoteProperty -Name "User" -Value "admin" -Force` изменеие содержимого для сущности объекта User \ +`ping $srv | Out-Null` перенаправить результат вывода в Out-Null + +### Variable +`$var = Read-Host "Enter"` ручной ввод \ +`$pass = Read-Host "Enter Password" -AsSecureString` скрывать набор \ +`$global:path = "\\path"` задать глобальную переменную, например в функции \ +`$using:srv` использовать переменную текущей сесси в Invoke-сессии \ +`Get-Variable` отобразить все переменные \ +`Get-Variable *srv*` найти переменную по имени \ +`Get-Variable -Scope Global` отобразить все глобальные переменные \ +`Get-Variable Error` последняя команда с ошибкой \ +`Remove-Variable -Name *` очистить все переменные \ +`$LASTEXITCODE` содержит код вывода последней запущенной программы, например ping. Если код возврата положительный (True), то $LastExitCode = 0