Skip to content

Instantly share code, notes, and snippets.

View rodmhgl's full-sized avatar
🐒
Just monkeyin' around

Rod Stewart rodmhgl

🐒
Just monkeyin' around
View GitHub Profile
@rodmhgl
rodmhgl / Get-GitTips.ps1
Last active June 30, 2017 22:14
Grabs a random tip from the Git-Tips Github repository
Function Get-GitTip {
<#
.SYNOPSIS
Grabs a random tip from the Git-Tips Github repository
.DESCRIPTION
Grabs a random tip from the Git-Tips Github repository
Designed to be used as part of my $profile to receive a daily tip
.PARAMETER URI
@rodmhgl
rodmhgl / tasks.json
Last active May 23, 2017 21:55
I always end up with that one customer who wants me to email them the PS1 file. I've always hated having to do the manual copy and rename, so let's automate it until they get actual source control.
{
"version": "0.1.0",
"tasks": [
{
"taskName": "build",
"command": "powershell",
"args": [
"-ExecutionPolicy",
"Unrestricted",
"Merge-Script -Script '${file}' -Bundle -OutputPath '${fileDirname}\\out' -OutputType Script;",
function Export-Log {
<#
.Synopsis
Writes tab-separated log messages to a specified file.
.DESCRIPTION
Writes tab-separated log messages to a specified file.
.EXAMPLE
Export-Log -messagetype ERROR -logfile c:\temp\log.csv -message "Encountered error performing operation."
Will log an error message to the log located in c:\temp\log.csv
.EXAMPLE
@rodmhgl
rodmhgl / Create-PowerShellHere.ps1
Created January 9, 2017 16:55
Create PowerShell Here Right-Click Explorer Option
<#
.SYNOPSIS
Creates a right-click (or shift right-click) explorer menu option to open Powershell at the selected location
.DESCRIPTION
Creates a right-click (or shift right-click) explorer menu option to open Powershell at the selected location
.EXAMPLE
.\Create-PowerShellHere.ps1
Will create a right-click menu with the default text, "Open PowerShell Here"
.EXAMPLE
@rodmhgl
rodmhgl / temp.ps1
Last active December 15, 2016 00:05
Why is remoting slower than running over the network?
# Remote Code
$SB = {
param($file)
$SHA1 = New-Object -TypeName System.Security.Cryptography.SHA1CryptoServiceProvider
$stream = [System.io.file]::Open($file, [System.IO.FileMode]::Open, [System.IO.FileAccess]::Read)
$hash = [System.BitConverter]::ToString($SHA1.ComputeHash($stream))
$hash = $hash.replace('-','')
$hash = "0x$hash"
$stream.Close()
return $hash
@rodmhgl
rodmhgl / Get-RSFileHash.ps1
Last active November 17, 2016 21:16
Just looking to get input on the best way to handle parameter sets
function Get-RSFileHash {
<#
.Synopsis
Returns an MD5 filehash when given a file path
.DESCRIPTION
Returns an MD5 filehash when given a file path
.EXAMPLE
Get-RSFileHash -Filename c:\temp\filetohash.txt
.EXAMPLE
Get-ChildItem c:\temp\*.txt | get-rsfilehash
@rodmhgl
rodmhgl / DC_Regex
Created October 22, 2013 16:13
Regex, extract DC from DN
$DN = 'CN=Username,OU=OrganizationalUnit,DC=lab,DC=local'
$pattern = '(?i)DC=\w{1,}?\b'
([RegEx]::Matches($DN, $pattern) | ForEach-Object { $_.Value }) -join ','
@rodmhgl
rodmhgl / Reset-RDPListener
Created June 28, 2013 20:02
Attempts to reset the RDP listener of a remote server. Sometimes it works, sometimes it doesn't, but it's always worth a shot.
function Reset-RDPListener {
param($ComputerName)
$ts = Get-WMIObject -class win32_Terminalservicesetting -comp $ComputerName
$ts.SetAllowTSConnections($false)
$ts.SetAllowTSConnections($true)
}
@rodmhgl
rodmhgl / Get-RealName
Created June 28, 2013 19:19
PowerShell - Searches Active Directory for a given SAMAccountName, returns SAMAccountName, displayname, office, telephonenumber
function Get-RealName {
param ($SAMAccountName)
Get-QADUser -SamAccountName $SAMAccountName | select samaccountname, displayname, office, telephonenumber
}
@rodmhgl
rodmhgl / Get-SAMAccountName
Created June 28, 2013 19:15
PowerShell snippet - requires Quest AD Tools - will search Active Directory for the given Display Name, and return the samaccountname, display name, office, and telephone number for matching users
function Get-SamAccountName {
param ($DisplayName)
Get-QADUser -DisplayName "*$DisplayName*" | select samaccountname, displayname, office, telephonenumber
}