PowerShell - Operators
# arithmetic operators (+, -, *, /, %)
[int] $1stnumber = Read-host "Enter 1st number "
[int] $2ndnumber = Read-host "Enter 2nd number "
Write-Host "Sum of these Numbers is $($1stnumber + $2ndnumber)"
Write-Host "Multiplication of these Number is $($1stnumber * $2ndnumber)"
Write-Host "Result of this Division Operation is $($1stnumber / $2ndnumber)"
Write-Host "Remainder this of Division Operation is $($1stnumber % $2ndnumber)"
## Arithmetic Operator with Strings
$1stString = "Best"
$2ndString = "Test"
Write-Host "Sum of these String is $($1stString + $2ndString)"
Write-Host "Multiplication of these Number is $($1stString * 8)"
#################################################################################
New-Item -Name $("Test_" + "File_" + (Date).DayOfWeek + ".txt")
#################################################################################
#################################################################################
######################################## Assignment Operators
$MyNumber = 100
"Now my Number is $MyNumber"
$MyNumber += 50
"Now my Number is $MyNumber"
$MyNumber -= 50
"Now my Number is $MyNumber"
$MyNumber *= 50
"Now my Number is $MyNumber"
$MyNumber /= 50
"Now my Number is $MyNumber"
$MyNumber %= 50
"Now my Number is $MyNumber"
# Assignment Operators with Strings
$Value = "Test"
$Value
$Value += 2
$Value
$Value *= 2
$Value
#################################################################################
#################################################################################
## Comparision Operators - Equality Operators - In case of Single/Scaler Values
$X = 50
$Y = 100
If ($X -eq $Y)
{Write-Host "This condition is True"}
else
{Write-Host "This condition is False"}
If ($X -ne $Y)
{Write-Host "This condition is True"}
else
{Write-Host "This condition is False"}
If ($X -gt $Y)
{Write-Host "This condition is True"}
else
{Write-Host "This condition is False"}
If ($X -ge $Y)
{Write-Host "This condition is True"}
else
{Write-Host "This condition is False"}
If ($X -lt $Y)
{Write-Host "This condition is True"}
else
{Write-Host "This condition is False"}
If ($X -le $Y)
{Write-Host "This condition is True"}
else
{Write-Host "This condition is False"}
## Comparision Operators - Equality Operators - In case of Collection
"Test", "best", "test" -eq "test"
"Test", "best", "test" -ne "test"
4,5,2,6,8,1 -gt 2
4,5,2,6,8,1 -lt 2
4,5,2,6,8,1 -ge 2
4,5,2,6,8,1 -le 2
#################################################################################
## Comparision Operators - Matching Operators - In case of Scaler Values
"Test" -like "*test*"
"Test" -notlike "*test*"
Get-Service|Where-Object {$_.DisplayName -like "*Windows Update*"}
Get-Service|Where-Object {$_.DisplayName -notlike "*Windows Update*"}
"PowerShell" -match 'shell'
"PowerShell" -notmatch 'shell'
## Comparision Operators - Matching Operators - In case of Collection of Values
"Test", "best", "test" -like "*test*"
"Test", "best", "test" -notlike "*test*"
#################################################################################
#################################################################################
# Comparision Operators - Containment Operators
"Test", "Best", "Chest" -ccontains "Best"
"Test", "Best", "Chest" -notcontains "Best"
"Best" -in "Test", "Best", "Chest"
"Best" -notin "Test", "Best", "Chest"
#################################################################################
#################################################################################
# Comparision Operators - Replacement Operators
"Test Value" -replace 'Te', 'Be'
1..5|foreach {New-Item -Name $("file" + $_ + ".txt")}
Get-ChildItem *.txt | foreach {Rename-Item $_.Name -NewName $($_.Name -replace '.txt', '.log')}
Get-ChildItem *.log | foreach {Rename-Item $_.Name -NewName $($_.Name -replace '.log', '.txt')}
#################################################################################
#################################################################################
# Comparision Operators - Type Operators
$A = 2
$A -is [int]
$A -isnot [int]
#################################################################################
#################################################################################
# Logical Operators
(1 -eq 1) -and (1 -eq 2)
(1 -eq 1) -or (1 -eq 2)
(1 -eq 1) -xor (1 -eq 2)
!(1 -eq 1)
#################################################################################
#################################################################################
# Redirection Operators
ping fakehost
ping fakehost > F:\PowerShell\PracticeGround\Refile.txt
start "F:\PowerShell\PracticeGround\Refile.txt"
ping fakehost >> F:\PowerShell\PracticeGround\Refile.txt
start "F:\PowerShell\PracticeGround\Refile.txt"
#################################################################################
#################################################################################
# Split Operators
-split "This is a,test"
"This,is,a,test" -split ","
"This,is,a,test" -split "(,)"
"apple,Orange;mango" -split "[,;]"
"This,is,a test" -split "(,)",2
#################################################################################
#################################################################################
# Join Operators
-join ("This","is","join","example")
("This","is","join","example") -join " "
#################################################################################
#################################################################################
## Unary Operator
$number = 100
$number
$number++
$number
++$number
$number
$number--
$number
--$number
$number
#################################################################################
#################################################################################
##### Special Operator - Grouping Operator
4+4/2
(4+4)/2
(Get-Service).DisplayName[2]
(Get-Service).count
#################################################################################
#################################################################################
##### Special Operator - Subexpression Operator $()
"My OS get updated using Service $((Get-Service | Where {$_.DisplayName -like "Win*date"}).Displayname)"
#################################################################################
#################################################################################
##### Special Operator - Call Operator
$command = Read-Host "Write Command That you want to run"
$command
& $command #Running Command Stored as String in a Variable
new-item F:\PowerShell\PracticeGround\Script1.ps1
Set-Content F:\PowerShell\PracticeGround\Script1.ps1 -value "Get-Service"
"F:\PowerShell\PracticeGround\Script1.ps1"
& "F:\PowerShell\PracticeGround\Script1.ps1" #Running Script by getting Name of Script as String
#################################################################################
#################################################################################
##### Special Operator - Array Subexpression Operator @()
##### Special Operator - Comma Operator & Index Operator[]
$list = "a", "b", "c"
$list
$list[1]
$list[2]
##### Special Operator - Pipeline Operator |
##### Special Operator - Range Operator ..
1..5
##### Special Operator - Member Operator .