/PowerShell

Collection of useful PowerShell functions, scripts, snippets and templates

Primary LanguagePowerShellGNU General Public License v3.0GPL-3.0

PowerShell

My collection of useful functions, scripts, snippets and templates written by myself.

Description

Automate all the Things!

Module

How to install the module?

  1. Download the latest Release
  2. Copy the folder Module\LazyAdmin to C:\Users\%username%\Documents\WindowsPowerShell\Modules\
  3. Open up a PowerShell as an admin and set the execution policy: Set-ExecutionPolicy RemoteSigned
  4. Import the Module with the command Import-Module LazyAdmin (Maybe add this command to your PowerShell profile)

Available functions:

Function Description Help
Clear-ARPCache Clear the ARP cache 📖
Convert-IPv4Address Convert an IPv4-Address to Int64 and vise versa 📖
Convert-Subnetmask Convert a subnetmask to CIDR and vise versa 📖
Find-StringInFile Find a string in one or multiple files 📖
Get-ARPCache Get the ARP cache 📖
Get-ConsoleColor Get all available console colors 📖
Get-InstalledSoftware Get all installed software with DisplayName, Publisher and UninstallString 📖
Get-IPv4Subnet Calculate a subnet based on an IP-Address and the subnetmask or CIDR 📖
Get-LastBootTime Get the time when a computer is booted 📖
Get-MACAddress Get the MAC-Address from a remote computer 📖
Get-MACVendor Get Vendor from a MAC-Address 📖
Get-RandomPassword Generate passwords with a freely definable number of characters 📖
Get-RandomPIN Generate PINs with freely definable number of numbers 📖
Get-WindowsProductKey Get the Windows product key and some usefull informations about the system 📖
Get-WLANProfile Get WLAN profiles, include password as SecureString or as plain text 📖
Invoke-IPv4NetworkScan Powerful asynchronus IPv4 Network Scanner to scan an IP-Range or subnet 📖
Invoke-IPv4PortScan Powerful asynchronus IPv4 Port Scanner to scan a TCP Port-Range 📖
Send-WakeOnLan Send a network message to turn on or wake up a remote computer 📖
Split-IPv4Subnet Split a subnet in multiple subnets with given subnetmasks 📖
Test-IsFileBinary Test if a file is binary 📖
Update-StringInFile Replace a string in one or multiple files 📖

Scripts

Script Description Help
Convert-ROT13 Rotate lower and upper chars by n places (Caesar cipher) 📖
Convert-ROT47 Rotate ascii chars by n places (Caesar cipher) 📖
OptimizePowerShellStartup.ps1 Optimize PowerShell startup by reduce JIT compile time with ngen.exe 📖

Snippets

Snippet Description
ConnectToExchange2010.ps1 Connect to Exchange 2010 Management Shell in script
CredentialParameter.ps1 Parameter to pass credentials into a function/script
New-Object.ps1 Create a new PSObject with custom properties
PressAnyKeyToContinue.ps1 Wait until the user pressed a key
PromptForChoice.ps1 Prompt for choice
PSCustomObject.ps1 Create a new PSObject with custom properties (faster than New-Object/Add-Member)
RewriteInLine.ps1 Rewrite in Line (Write-Host "xx% complete")
SelfElevatingScript.ps1 Self elevate a PowerShell script/console with parameters
Send-MailMessage.ps1 Send a mail message via PowerShell

Regex

Regex Description
IPv4Address.ps1 Validate an IPv4-Address like 192.168.1.0
MACAddress.ps1 Validate a MAC-Address like 00:00:00:00:00:00 or 00-00-00-00-00-00 or 000000000000
Subnetmask.ps1 Validate an Subnetmask like 255.255.255.0

Templates

Template Description
Default.ps1 Default template for new scripts
Default.README.md Default template for documentation on GitHub
RunspacePool.ps1 RunspacePool template - run code asynchron (faster than PSJobs)