-
-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
James Brundage
committed
Aug 2, 2023
1 parent
1ad53c1
commit f8dd75b
Showing
1 changed file
with
124 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,124 @@ | ||
#1. Welcome to Posh | ||
|
||
#.Silent Clear-Host | ||
|
||
# Posh improves the PowerShell experience. | ||
|
||
# It enhances PowerShell formatting, and makes the shell easier to script. | ||
|
||
# For a simple example, just echo the variable $Posh | ||
|
||
$Posh | ||
|
||
# Let's take a quick tour of some of the ways Posh makes PowerShell cooler. | ||
|
||
#2. Enhanced Formatting | ||
|
||
#.Silent Clear-Host | ||
|
||
#2.1. File Colorization and Icons | ||
|
||
# Posh shows files in color with (hopefully) helpful icons and clickable links. | ||
|
||
Get-Module Posh | | ||
Split-Path | | ||
Get-ChildItem | ||
|
||
# Posh's icons do not require NerdFonts, and will be ignored in favor of Terminal-Icons, if that's what you prefer. | ||
|
||
#.Silent Clear-Host | ||
|
||
#2.2 Get-Command in Color | ||
|
||
# Posh also updates the formatter for Get-Command. | ||
|
||
# It slims the output to just the Name and the Module, | ||
# and colorizes the Name based off the verb. | ||
|
||
Get-Command -Module Microsoft.PowerShell.* | ||
|
||
#.Silent Clear-Host | ||
|
||
#2.3. Get-Member in Color | ||
|
||
# Get-Member is one of the three most useful commands in PowerShell | ||
|
||
# Posh lets you see it in color: | ||
|
||
Get-Command | Get-Member | ||
|
||
#.Silent Clear-Host | ||
|
||
#2.4 Reflection formatting | ||
|
||
# Posh also makes it easy to explore reflection. | ||
|
||
# Just pipe a type to Format-Custom. | ||
|
||
|
||
[int] | Format-Custom | ||
|
||
# By default, this only shows you short set of information about just that type. | ||
|
||
# To see _everything_ about an object, use something like | ||
|
||
[int] | Format-Custom -View System.Type.Full | ||
|
||
|
||
# This also works for generic types. | ||
|
||
[Collections.Generic.Dictionary[string, PSObject]] | | ||
Format-Custom -View System.Type.Full | ||
|
||
#2.5 Colorized XML | ||
|
||
#.Silent Clear-Host | ||
|
||
# Posh also makes XML more colorful in the console. | ||
|
||
Invoke-RestMethod https://pssvg.start-automating.com/Examples/HelloWorld.svg | ||
|
||
#2.6 Colorized Regular Expressions | ||
|
||
#.Silent Clear-Host | ||
|
||
# Regular Expressions are also syntax highlighted, helping us all hopefully understand them better. | ||
|
||
[Regex]::new(' | ||
(?<NameOfCaputre>Pattern) # Comment | ||
','IgnoreCase,IgnorePatternWhitespace') | ||
|
||
|
||
#2.7 Get-Process heatmap | ||
|
||
# Posh also makes the formatter for Get-Process show a heatmap of various properties. | ||
|
||
Get-Process -id $pid | ||
|
||
#2.8 TimeSpans and TimeZones | ||
|
||
#.Silent Clear-Host | ||
|
||
# Posh also simplifies the display for TimeZones and Timespans | ||
|
||
New-TimeSpan -Hours 24 -Minutes 30 -Seconds 15 | ||
|
||
# We can also display timespans in their ISO format! | ||
|
||
New-TimeSpan -Hours 24 -Minutes 30 -Seconds 15 | | ||
Format-Custom -View ISO-8601 | ||
|
||
|
||
# TimeZones also get more readable by trimming the number of displayed properties. | ||
|
||
Get-TimeZone | ||
|
||
# We only show the ID and DisplayName. | ||
|
||
# We also add a .LocalTime for ease of use. | ||
|
||
# This makes a simple PowerShell command console World Clock. | ||
|
||
Get-TimeZone -ListAvailable | ||
|
||
|