Tool.Yun
Herramientas practicas para desarrolladores
CSV a datos
Codificador/decodificador de cadenas Base64
Codificador/decodificador de matriz hexadecimal Base64
Consumo y gasto de energía en la computadora
Conversor de caracteres Unicode a entidades Java
Conversor de coordenadas geográficas
Conversor de formato de variables de entorno
Conversor de propiedades
Convertidor dBm mW
Convertidor de archivos Base64
Convertidor de base entera
Convertidor de muchas unidades
Convertidor de números romanos
Convertidor de unidades de almacenamiento de datos
Excel a datos
Generador de ULID
Normalizador de correo electrónico
Texto a Unicode
Texto a binario UTF-8
Torrente a Magnet
Analizador JWT
Analizador SAML
Analizador de certificados/claves
Bcrypt
Bytes de Niceware a frase de contraseña
Calculadora de CRC
Cifrado PGP
Cifrado RSA
Cifrado de archivos PGP
Cifrado de cadenas Jasypt
Cifrar/descifrar texto
Codificador/decodificador Bech32
Conversor de certificados SSL
Criptografía AGE
Descifrado de Ansible Vault Crypt
El secreto compartido de Shamir
Firmante y verificador RSA/DSA/ECDSA
Generador JWT
Generador de HMAC
Generador de RSE
Generador de certificados X509
Generador de claves PGP
Generador de pares de claves ECDSA
Generador de pares de claves Ed25519
Generador de pares de claves RSA
Hasher Argon2
Hasher de archivos
Paseto/PASERK Local
Paseto/PASERK Público/Privado
Texto hash
Decodificador de código QR
Generador de códigos QR
Generador de códigos QR de WiFi
Generador de códigos de barras
Generador de información de contacto QR
Lector de código de barras
Validador de GTIN
tools.epc-qrcode-generator.name
Analizador y formateador de teléfonos
Buscador ISO 639
Buscador de códigos de país ISO 3166
Búsqueda Unicode
Calculadora de IMC
Calculadora de SLA
Calculadora de ritmo de carrera
Compatibilidad de licencias de software
Comprobador de tarjetas de crédito
Conversor de RMB a mayúsculas
Conversor de divisas
Convertidor de calendario
Diccionario en línea
Directrices de iluminación del IES
Explicar el comando Shell
Validador de Luhn
Validador de números de IVA
Validador y analizador IBAN
Validador y analizador ISBN
Conversor de cotizaciones
Convertidor de archivos HEX
Convertidor de rizos
Descompresor/desempaquetador de Javascript
Divisor de archivos
Embellecedor de Javascript
Embellecer y formatear SQL
Embellecimiento y minimización de CSS/JS
Escaper de cuerdas
Falsificador de datos
Generador de GitIgnore
Generador de atributos de Gita
Generador de cadenas de conexión a bases de datos
Generador de correo electrónico
Generador de creación de bases de datos
Generador de faviconos
Generador de metagráficos abiertos
Generador de parámetros SQL
Generador de scripts para pruebas de carga K6
Generador de secretos de Django
Generador de tablas de bases de datos
INSERTAR JSON a SQL
Json a Protobuf
Json a Typescript
Minificador de SQL
Ofuscador de Javascript
Probador de Picomatch
Probador de escape ANSI
Probador de interfaz de usuario Swagger
Pruebas de API
Resaltador de código/scripts
Stacktrace más bonito
Temporizador Pomodoro
editor de comandos CLI
Conversor de Docker Compose a Docker Run
Conversor de Docker Run a Docker Compose
Conversor de formato de Docker Compose
Creador de Traefik Docker Compose
Descargador de imágenes de Docker
Docker Compose a Quadlets
Docker Compose a archivo .env
Docker Compose para Kubernetes
Ejecución de Docker en Kubernetes
Ejecución de Docker en Quadlets
Etiquetas de Docker Pangolin
Generador de RBAC para Kubernetes
Generador de etiquetas de Dockerfile
Inspeccionar Docker para ejecutar Docker
Validador de Docker Compose
Alarma de crono/día laborable
Alarma de tiempo
Analizador de archivos ICAL
Calculadora TTL
Calculadora de ETA
Calculadora de duración
Calculadora de días
Calculadora de fechas y duraciones
Conversor de fecha y hora
Conversor de números de semana
Conversor de zona horaria
Cronómetro
Cuenta atrás
Fusión de iCal
Generador ICAL
¿Que día?
Calculadora de amortización
Analizador de URL
Analizador de cookies
Analizador de correo electrónico
Analizador de correo electrónico rebotado
Analizador de informes DMARC
Analizador de mensajes de Outlook
Buscador de propiedades LDAP de ActiveDirectory
Calculadora de resistencias
Codificador/decodificador hexadecimal
Consola de puerto serie
Convertidor GZip/Deflate
Convertidor SMART Raw
Convertidor de ObjectId de MongoDB
Convertidor de codificación MIME
Convertidor de números de punto flotante
Convertidor de orden medio-endian
Decodificador EMV TLV
Decodificador de URL compartidas de SharePoint
Decodificador de transacciones ETH
Descodificador de Outlook Safelink
Detector de tipo de archivo
Detector/decodificador de juegos de caracteres de texto
Enmascarador de datos sensibles
Expansor de URL cortas
Extractor de ID de copos de nieve
Generador de TCPDump
Generador de URL
Generador de comandos de Nmap
Hoja de trucos para el cableado RJ45 Cat6
Información del código clave
Lector de archivos de Parquet
Probador HTTPS
Probador de DNS
Probador de propagación DNS
Probador de píxeles muertos
键盘测试器
Conversor de unidades de volumen
Convertidor de aceleración
Convertidor de caudal volumétrico
Convertidor de energía alimentaria
Convertidor de frecuencia
Convertidor de iluminancia
Convertidor de potencia
Convertidor de prefijos del SI
Convertidor de temperatura
Convertidor de unidades angulares
Convertidor de unidades de energía
Convertidor de unidades de fuerza
Convertidor de unidades de longitud
Convertidor de unidades de masa
Convertidor de unidades de presión
Convertidor de unidades de área
Convertidor de velocidad
Ordenador de fitness
Convertidor UUID
Generador de UUID
Generador de contraseñas
Generador de contraseñas BIP39
Generador de contraseñas de Diceware
Generador de código PIN
Generador de códigos OTP
Generador de nanoIDs
Generador de numerónimos
Generador de tokens
generador de números aleatorios
Hoja de referencia de Docker
Hoja de referencia de Docker Compose
Hoja de referencia de Dockerfile
Hoja de referencia de confirmación semántica de Git
Hoja de referencia de expresiones regulares comunes
Hoja de referencia de selectores CSS
Hoja de referencia de sintaxis XPath
Hoja de referencia de sintaxis de JSONPath
Hoja de trucos de Bash
Hoja de trucos de Docker SWARM
Hoja de trucos de Git
Hoja de trucos de Jq
Hoja de trucos de Markdown
Hoja de trucos de Nano
Hoja de trucos de Nginx
Hoja de trucos de PowerShell
Hoja de trucos de Sed
Hoja de trucos de VIM
Hoja de trucos de comandos de pantalla
Hoja de trucos de expresiones regulares
Hoja de trucos del comando TMUX
Hoja de trucos del comando Zellij
Hoja de trucos del comando chmod
Hoja de trucos para K8
Comparación de imágenes
Conversor de formatos de imagen
Convertidor HEIC
Convertidor ICO/PNG
Eliminar EXIF
Eliminar el fondo de la imagen
GIF a MP4
Grabadora de cámara
Imagen a SVG (potrace)
Inversor de color de imagen
Lector de calidad de imágenes EXIF/Metadatos/GPS/JPEG
Marcador de agua
OCRizar imágenes y PDF
Recortar imagen
Redimensionador de imágenes
Vista previa de SVG
Analizador de tamaño JSON
Aplanador/desplanificador de JSON
CSV a JSON
Consulta JSON
Convertidor de JS a JSON
Convertidor de JSON a JS
Convertidor de JSON a YAML
Convertidor de cadenas JSON
Código JSON a PHP
DDL de JSON a SQL
Diferencia JSON
Editor JSON
Embellecer y formatear JSON
Entidad JSON a Java
Escaper/Unescaper de JSON
Fusión JSON
JSON Linter
JSON a .env
JSON a C#
JSON a CSV
JSON a MessagePack
JSON a TOML
JSON a TS
JSON a XML
JSON a datos
JSON a objeto
JSON para llevar
Json a PHP-Array
Json a Python
Json a esquema
Maestro de clasificación JSON
Minificar JSON
ObjGen a JSON
PHP-Array a JSON
Paquete de mensajes a JSON
Probador de rutas Jq/JSON
tools.json-patch.name
Lanzador de monedas
Rueda de la fortuna
Selector de tarjetas
Tirador de dados
Calculadora binaria
Calculadora de propinas
Conversor de formatos matemáticos
Evaluador de matemáticas
OCR matemático
Visualizador de curvas trigonométricas/de ecuaciones
Calculadora de distancia geográfica
Calculadora de porcentajes
Calculadora de relación de aspecto
Constructor de puntos de referencia
Cifrado de PDF
Compresor de PDF
Comprobador de firmas PDF
Concatenador de PDF
Descifrar y desbloquear PDF
Extractor de páginas PDF
Extractor de texto PDF
HTML a PDF
Linealización de PDF/FastWeb
Generador de expresiones Cron
Analizador de la fortaleza de las contraseñas
Autorización SIP
Búsqueda de dirección MAC
Calculadora Chmod
Calculadora RAID
Calculadora RAID ZPOOL
Calculadora de HDD
Calculadora de confiabilidad RAID
Calculadora de exclusión de subredes IP
Calculadora de rango de CIDR a IPv4/6
Calculadora de rango de IPv4/6 a CIDR(s)
Calculadora de subredes IPv4
Calculadora de subredes IPv6
Calculadora de velocidad de transferencia de datos
Calculadora visual de subredes
Comprobador DNSBL
Comprobador de Whois
Comprobador de puertos TCP/UDP
Consultas DNS
Consultas DNS/RDAP de Cloudflare
Convertidor de Punycode
Convertidor de direcciones IPv4
Convertidor de direcciones IPv6
Convertidor de direcciones MAC
Decodificador ARPA
Decodificador de causa de spam X-VR
Descargador de enlaces múltiples
Desinfectante HAS
Enteros a IPv4/IPv6
Expansor de rango IPv4
Formateador de Nginx
Formateador de comandos de shell
Fuerza de la contraseña de Zxcvbn
Generador Apache LogRotate
Generador FStab
Generador Option43
Generador Rsync
Generador WPA PSK
Generador de DNS BIMI
Generador de DNS DKIM
Generador de DNS DMARC
Generador de DNS PTR
Generador de DNS SPF
Generador de HTAccess
Generador de ULA de IPv6
Generador de autenticación básica
Generador de comandos Curl
Generador de comandos UFW
Generador de comandos de apagado
Generador de configuraciones de Wireguard
Generador de crontab
Generador de htpasswd/htaccess
Generador de iptables
Generador de puertos aleatorios
Hoja de trucos de ZPool
IPv4-6/IPRange/CIDR en IPRange/CIDR/IPMask
Linealizador de comandos de shell
Listador de subredes IPv4
Mi dirección IP
Números de puerto
Probador de micrófonos
Pruebas de WebSocket
Silbido
Ubicación geográfica de IP
generador de direcciones MAC
generador de línea de comandos de firewalld
tools.restic-command-generator.name
tools.url-redirection-checker.name
De Epub a Markdown
Diferencia de Markdown
Editor de Markdown
Embellecedor de tablas de Markdown
Generador de tablas Markdown
Generador de índice de Markdown
HTML a Markdown
Lorem Ipsum de rebajas
Markdown a DOCX
Markdown a HTML
Markdown a datos
Markdown a texto
Pegar como Markdown
Vista previa de Markdown
tools.markdown-format-converter.name
Linter TOML
TOML a JSON
TOML a YAML
Buscador de líneas duplicadas
Calculadora de Levenshtein
Codificador/decodificador de tokens GPT
Comparación de fuentes
Compartidor de enlaces sociales
Comprobador de I y L
Conversor de distribución de teclado
Conversor de mayúsculas y minúsculas
Convertidor de código Morse
Convertidor de listas
Convertidor de runas
Diagrama de estructura de carpetas
Diferencia de texto
Divisor de indicaciones de IA
Estadísticas de texto
Estimador de tokens GPT
Exportador de sirenas
Extraer texto de HTML
Formateador Unicode
Generador de citas
Generador de comandos Sed
Generador de texto artístico ASCII
Generador/Banner de Zalgo
Hola, generador.
Imagen a arte ASCII
JSON a TOON
Lector de RSVP
Listas Comparar
Ofuscador de cadenas
Palabras distintas
Paquete de archivos para IA
Probador de expresiones regulares
Reemplazador de texto inteligente y separador de línea
Selector de emojis
Selector de líneas aleatorias
TOON a JSON
Tabulador a espacios
Texto a nombres Unicode
Texto al alfabeto de la OTAN
Traductor de texto
Unicode a GSM-7
Analizador de agente de usuario
Cadena Slugify
Capturador de URL
Codificar/decodificar cadenas con formato URL
Comprobador de contraste de color
Conversor de colores
Convertidor CSS XPath
Convertidor de píxeles REM
Convertidor de unidades CSS
Creador de fragmentos de búsqueda de texto de URL
Códigos de estado HTTP
Editor HTML WYSIWYG
Embellecedor de CSS
Embellecedor de HTML
Escapar entidades HTML
Generador de URL UTM
Generador de degradados CSS
Generador de marcadores de posición SVG
HTML a XHTML
HTML a datos
Imagen a CSS
Información del dispositivo
Limpiador de HTML
Limpiador de URL
Minificador de HTML
Rueda de colores
Tipos MIME
Formateador XML
Linter XML
ObjGen a HTML
Probador XPath
Probador XSLT
XML a JSON
Aplanador/desaplanador de YAML
Convertidor de YAML a JSON
Embellecer y formatear YAML
Fusión de YAML
YAML a TOML

Hoja de trucos de PowerShell

PowerShell es un potente lenguaje de scripting y una interfaz de línea de comandos diseñada para la administración y automatización de sistemas. Ofrece una amplia gama de cmdlets y funciones que permiten a los usuarios gestionar y automatizar tareas en sistemas Windows de forma eficiente.

PowerShell is a shell and scripting language built on .NET. Unlike POSIX shells it passes objects down the pipeline rather than text, so Get-Process | Sort-Object CPU sorts real numbers instead of parsing columns.

ℹ️ PowerShell 7+ (pwsh) is cross-platform and current; Windows PowerShell 5.1 (powershell.exe) ships with Windows and is in maintenance. Check with $PSVersionTable.

🔎 Finding Your Way

# what commands exist for a noun?
Get-Command *service*
Get-Command -Module Microsoft.PowerShell.Management

# help, with the part everyone actually wants
Get-Help Get-ChildItem -Examples
Get-Help Get-ChildItem -Full
Update-Help

# what properties and methods does this object have?
Get-Process | Get-Member

# what did that command actually return?
Get-Process | Select-Object -First 1 | Format-List *

📦 Variables

SyntaxDescription
$var = "string"Assign a variable
[int]$var = 5Strongly typed variable
[ValidateRange(1,9)][int]$x=1Typed and constrained
$a, $b = 'a', 'b'Assign several at once
$a, $b = $b, $aSwap two values
$global:var = "v"Scope: global, script, local, private
${my var}A name containing spaces or punctuation
$env:PATHAn environment variable
Remove-Variable xDelete a variable

📚 Arrays

SyntaxDescription
"a","b","c"Array of strings
@()Empty array
,"hi"Array of exactly one element
1,(2,3),4Nested array
$arr[5]Sixth element (0-based)
$arr[2..20]A range of elements
$arr[-1]The last element
$arr[-3..-1]The last three
$arr[1,4+6..9]Positions 1, 4 and 6–9
$arr[($arr.length-1)..0]Reversed
@(Get-Process)Force a single result into an array
$z = $arrA + $arrBConcatenate
$list = [System.Collections.Generic.List[int]]::new()A growable list — much faster than += in a loop

🗂 Hash Tables

SyntaxDescription
$hash = @{}Empty hash table
@{foo=1; bar='two'}Initialise with values
[ordered]@{a=1; b=2}Keeps insertion order
$hash.key1 / $hash["key1"]Read a value
$hash.key1 = 1Write a value
$hash.Remove("key1")Delete a key
$hash.ContainsKey("key1")Test for a key
$hash.GetEnumerator() | Sort-Object KeyIterate in key order
[pscustomobject]@{x=1; z="z"}Turn a hash into an object

🔤 Strings

SyntaxDescription
"$var expands"Double quotes interpolate
'$var does not'Single quotes are literal
"Total: $($items.Count)"$( ) evaluates an expression inside a string
"{0} of {1}" -f $a, $bThe format operator
"col1`tcol2`n"`t tab, `n newline, ` escapes
@"…"@ / @'…'@Here-string, expanding / literal
"abc".ToUpper().NET methods work on strings
$s -split ',' / $a -join ','Split and join
$s.Trim() / .PadLeft(5)Trim and pad
$s -replace 'a','b'Regex replace

💬 Comments & Escaping

# a single-line comment

<#
  a block comment, also used for help text
#>

# the backtick is the escape character
Write-Output "He said `"hi`""
Write-Output "line one`nline two"

# and the line-continuation character
Get-ChildItem -Path C:\ `
              -Recurse `
              -Filter *.log

📁 Files & Paths

CommandDoes
Get-Location (pwd)Current directory
Set-Location (cd)Change directory
Get-ChildItem (ls, dir)List a directory
Get-Content (cat)Read a file
Set-Content / Add-ContentOverwrite / append
Out-File / Out-Null / Out-StringWrite to a file / discard / stringify
New-Item -ItemType DirectoryCreate a file or folder
Copy-Item / Move-Item / Rename-Item / Remove-ItemCopy, move, rename, delete
Test-PathDoes it exist?
Split-Path -ParentThe directory part of a path
Join-Path a bBuild a path portably
Resolve-PathExpand to a full path
Get-FileHash file.zipChecksum a file
# read a large file line by line without loading it all
Get-Content big.log -ReadCount 1000 | ForEach-Object { $_ }

# tail -f
Get-Content app.log -Wait -Tail 20

# every .log modified in the last day
Get-ChildItem C:\logs -Recurse -Filter *.log |
  Where-Object LastWriteTime -gt (Get-Date).AddDays(-1)

🔀 Flow Control

if ($x -eq 5) { "five" } elseif ($x -gt 5) { "more" } else { "less" }

while ($x -lt 10) { $x; $x++ }

do { $x++ } while ($x -lt 10)

for ($i = 0; $i -lt 10; $i++) { $i }

foreach ($file in Get-ChildItem C:\) { $file.Name }

1..10 | ForEach-Object { $_ * 2 }

# parallel, PowerShell 7+
1..10 | ForEach-Object -Parallel { Start-Sleep 1; $_ } -ThrottleLimit 5

switch ($value) {
  'a'       { 'letter a'; break }
  { $_ -gt 10 } { 'big' }
  default   { 'something else' }
}

⚖️ Operators

OperatorMeaning
= += -= *= /= %= ++ --Assignment
-eq / -neEqual / not equal
-gt -ge -lt -leNumeric comparison
-and -or -xor -not !Logical
-like / -notlikeWildcard match (*, ?)
-match / -notmatchRegex match — fills $Matches
-replace 'a','b'Regex replace
-contains / -inArray membership, either way round
-split / -joinSplit a string / join an array
-is / -isnot / -asType test and conversion
-fFormat a string
..Range
$( ) / @( )Sub-expression / array sub-expression
& / .Invoke a command / dot-source a script
?? / ??=Null-coalescing (PowerShell 7+)
?. / ?[ ]Null-conditional access (PowerShell 7+)

⚠️ Comparisons are case-insensitive by default. Use -ceq, -clike, -cmatch when case matters.

🧱 Objects & the Pipeline

# properties and methods
(Get-Date).Date
(Get-Date).AddDays(-7)
"string".ToUpper()

# static members
[DateTime]::Now
[Math]::Round(3.14159, 2)
[System.Net.Dns]::GetHostByAddress("127.0.0.1")

# build your own objects
[pscustomobject]@{ Name = 'web01'; Status = 'up' }

# add a calculated property
Get-Process | Select-Object Name, @{ Name = 'MB'; Expression = { [math]::Round($_.WorkingSet / 1MB, 1) } }

🔍 Filter, Sort, Group, Format

ExampleDoes
Get-Process | Where-Object CPU -gt 100Filter (simple syntax)
Get-Process | Where-Object { $_.Name -like "chrome*" }Filter (script block)
Get-Process | Sort-Object WorkingSet -DescendingSort
Get-Process | Select-Object -First 5Take the first few
"a","b","a" | Select-Object -UniqueDeduplicate
Get-Service | Group-Object StatusGroup
Get-Process | Measure-Object WorkingSet -Sum -AverageAggregate
Get-Process | Select-Object -ExpandProperty ModulesFlatten a nested property
Get-Process | Format-Table Name, Id -AutoSizeTable output
Get-Item C:\ | Format-List *Every property
Get-Content log.txt | Select-String "error"grep
Compare-Object $a $bDiff two collections

💡 Format-* is always the last step — its output is display text, not objects, so nothing downstream can filter it.

🧰 Functions & Scripts

function Get-Square {
  param(
    [Parameter(Mandatory)][int]$Number,
    [switch]$Verbose
  )
  $Number * $Number
}

Get-Square -Number 7

# an advanced function: pipeline input, -WhatIf, -Verbose for free
function Remove-OldLog {
  [CmdletBinding(SupportsShouldProcess)]
  param(
    [Parameter(ValueFromPipeline)][string]$Path,
    [int]$Days = 30
  )
  process {
    if ($PSCmdlet.ShouldProcess($Path, "delete")) {
      Remove-Item $Path
    }
  }
}

🚨 Error Handling

try {
  Get-Content missing.txt -ErrorAction Stop
}
catch [System.IO.FileNotFoundException] {
  Write-Warning "no such file"
}
catch {
  Write-Error "unexpected: $($_.Exception.Message)"
}
finally {
  "always runs"
}

# make non-terminating errors terminate, so catch can see them
Get-Item missing -ErrorAction Stop

# per-session default
$ErrorActionPreference = 'Stop'

# the most recent error, and the exit code of the last native command
$Error[0]
$LASTEXITCODE
$?

🌐 Web & Data

# REST calls, parsed into objects
$data = Invoke-RestMethod https://api.github.com/repos/vuejs/core
$data.stargazers_count

# with headers and a JSON body
Invoke-RestMethod -Uri $url -Method Post `
  -Headers @{ Authorization = "Bearer $token" } `
  -ContentType 'application/json' `
  -Body (@{ name = 'demo' } | ConvertTo-Json)

# the raw response, for scraping or downloads
Invoke-WebRequest $url -OutFile page.html

# convert between formats
Get-Process | Select-Object Name, Id | ConvertTo-Json
Get-Content data.json | ConvertFrom-Json
Import-Csv users.csv | Where-Object Dept -eq 'IT' | Export-Csv it.csv -NoTypeInformation
Export-Clixml / Import-Clixml   # round-trips real objects

🖥 System Administration

# processes
Get-Process | Sort-Object CPU -Descending | Select-Object -First 10
Stop-Process -Name notepad -Force

# services
Get-Service | Where-Object Status -eq 'Running'
Restart-Service -Name Spooler
Set-Service -Name Spooler -StartupType Manual

# background jobs
$job = Start-Job { Start-Sleep 10; "done" }
Receive-Job $job -Wait

# scheduled tasks, event logs, system info
Get-ScheduledTask
Get-WinEvent -LogName System -MaxEvents 20
Get-CimInstance Win32_LogicalDisk | Select-Object DeviceID, FreeSpace
Test-Connection example.com -Count 2

🔗 Remoting

# one command on many machines
Invoke-Command -ComputerName web01, web02 -ScriptBlock { Get-Service Spooler }

# an interactive session
Enter-PSSession -ComputerName web01
Exit-PSSession

# a reusable session
$s = New-PSSession -ComputerName web01 -Credential (Get-Credential)
Invoke-Command -Session $s { hostname }
Remove-PSSession $s

📦 Modules & Execution Policy

# find, install, load
Find-Module Pester
Install-Module Pester -Scope CurrentUser
Import-Module Pester
Get-Module -ListAvailable

# where does PowerShell look for modules?
$env:PSModulePath -split [IO.Path]::PathSeparator

# scripts refuse to run? check and relax the policy
Get-ExecutionPolicy -List
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

# your profile script
notepad $PROFILE

🧾 Automatic Variables

VariableHolds
$_ / $PSItemThe current pipeline object
$ArgsUnbound arguments to a script or function
$ErrorThe error history, newest first
$MatchesCapture groups from the last -match
$PSVersionTableVersion and edition information
$PWD / $HOMECurrent directory / home directory
$PSScriptRootThe folder the running script lives in
$LASTEXITCODEExit code of the last native command
$?Did the last command succeed?
$true $false $nullConstants
$PROFILEPath to your profile script

💾 PSDrives

DriveContents
Env:Environment variables
Alias:Command aliases
Function:Defined functions
Variable:Variables
Cert:Certificate stores
HKLM: / HKCU:The registry
WSMan:WinRM configuration
Set-Location HKLM:\SOFTWARE
Get-ChildItem Env: | Sort-Object Name
Get-ChildItem Variable:

⌨️ Aliases Worth Knowing

AliasReal commandAliasReal command
ls, dir, gciGet-ChildItem%ForEach-Object
cat, gcGet-Content?Where-Object
cd, slSet-LocationselectSelect-Object
cp, copyCopy-ItemsortSort-Object
rm, delRemove-Itemft / flFormat-Table / Format-List
ps, gpsGet-ProcessslsSelect-String
killStop-ProcessgmGet-Member

⚠️ Aliases are for the console, not for scripts — write the full cmdlet name in anything you commit.

🔣 Regular Expressions

PatternMatches
\w / \WWord character / non-word
\s / \SWhitespace / non-whitespace
\d / \DDigit / non-digit
{n} {n,} {n,m}Quantifiers
^ / $Start / end of the string
(?<name>…)Named capture group
# -match fills $Matches
if ("build-1234" -match '(?<name>\w+)-(?<id>\d+)') { $Matches.id }

# extract every match from a file
Select-String -Path app.log -Pattern '\b\d{1,3}(\.\d{1,3}){3}\b' -AllMatches |
  ForEach-Object { $_.Matches.Value } | Sort-Object -Unique

PowerShell uses the .NET regex engine — see .NET regular expressions.

📚 Resources

  • PowerShell documentation
  • Cmdlet reference
  • PowerShell Gallery
  • Style guide (community)