Skip to content

Instantly share code, notes, and snippets.

View skokhanovskiy's full-sized avatar

Stepan Kokhanovskiy skokhanovskiy

View GitHub Profile
$String = 'testtesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttestt
@skokhanovskiy
skokhanovskiy / CopyAcl.ps1
Created November 23, 2016 11:40
Copy subdirectory permissions from a one directory to an another
$SourceSirectory = '\\APP2\D$\Logs'
$DestinationDirectory = '\\APP4\D$\Logs'
Get-ChildItem -Path $DestinationDirectory -Directory -Recurse `
| ForEach-Object {
$DestinationPath = $_.FullName
$SourcePath = $DestinationPath.Replace($DestinationDirectory, $SourceSirectory)
if (Test-Path -Path $SourcePath -PathType Container)
@skokhanovskiy
skokhanovskiy / GetSqlServerInstanceDatabase.ps1
Created December 27, 2016 14:00
Gets list of an all sql server databases with an instance name
Get-CimInstance -Namespace 'root/Microsoft/SqlServer/ComputerManagement10' -ClassName 'SqlService' -Filter 'SQLServiceType = 1' -Property 'ServiceName' -ErrorAction Stop `
| Select-Object -ExpandProperty 'ServiceName' `
| ForEach-Object {
$Instance = $_
$SqlDatabaseClassName = 'Win32_PerfFormattedData_{0}_SQLServerDatabases' -f $Instance
Get-CimInstance -ClassName $SqlDatabaseClassName -Filter 'NOT Name = "_Total"' -Property 'Name' -ErrorAction Stop
} `
| Select-Object -ExpandProperty 'Name' `
| ForEach-Object {
New-Object -TypeName PSObject -Property @{ 'Instance' = $Instance; 'Database' = $_ }
$TestVariable = 'Test value.'
$RunspaceScript = {
param
(
[Parameter(Mandatory = $true)]
[System.Object] $ObservableCollection
)
if ($TestVariable -eq $null)
SELECT
j.[name] [job_name],
s.[step_id] [step_number],
s.[step_name] [step_name],
s.[command] [step_query],
s.[database_name] [step_database]
FROM
[msdb].[dbo].[SysJobs] j
INNER JOIN [msdb].[dbo].[sysjobsteps] s ON s.[job_id] = j.[job_id]
WHERE
@skokhanovskiy
skokhanovskiy / top-packages.sh
Created May 10, 2017 13:20
Get list of a manually installed packages sorted by size
apt-mark showmanual | while read -r package; do size=$(apt-cache --no-all-versions show $package | grep '^Installed-Size: ' | cut -f2 -d':' | xargs) && echo "$package $size"; done | sort -rnk2
@skokhanovskiy
skokhanovskiy / Send-Datagram.ps1
Last active July 28, 2017 13:10 — forked from hotstone/Send-Datagram
Send UDP datagram from Powershell
function Send-Datagram
{
[CmdletBinding(SupportsShouldProcess = $true)]
param
(
[Parameter(Position = 0, Mandatory = $true, ValueFromPipeline = $true)]
[AllowEmptyCollection()]
[AllowEmptyString()]
[AllowNull()]
[Alias('Data')]
@skokhanovskiy
skokhanovskiy / Get-RandomString.ps1
Created July 28, 2017 13:17
Generate random string specified length
function Get-RandomString
{
[CmdletBinding()]
param
(
[Parameter(Position = 0, Mandatory = $true)]
[UInt32] $Length,
[Parameter()]
[String] $Chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'
function New-PerfomanceCounterHash
{
[CmdletBinding()]
param
(
[Parameter()]
[Switch] $NotLocalized
)
$KeyName = 'Counter'
$Server = 'SQL-APPS'
$ConnectionTimeout = 15
$MaxConnections = 500
$ConnectionStringFormat = 'Server = {0}; Connection Timeout = {1}; Max Pool Size = {2}; Integrated Security = True;'
$CommandQuery = 'SELECT 1'
$ConnectionString = $ConnectionStringFormat -f $Server, $ConnectionTimeout, $MaxConnections
$Connections = [System.Collections.ArrayList] @()