├── README
├── .DS_Store
├── .gitignore
├── modules
├── Readme1st.txt
├── WPK
│ ├── WPF.ps1xml
│ ├── WPK.psd1
│ ├── WPK.psm1
│ ├── Add-GridRow.ps1
│ ├── Show-Window.ps1
│ ├── Close-Control.ps1
│ ├── Get-Resource.ps1
│ ├── Move-Control.ps1
│ ├── Set-Property.ps1
│ ├── Set-Resource.ps1
│ ├── Start-WPFJob.ps1
│ ├── Test-Ancestor.ps1
│ ├── Update-WPFJob.ps1
│ ├── Add-ChildControl.ps1
│ ├── Add-EventHandler.ps1
│ ├── Add-GridColumn.ps1
│ ├── ConvertTo-Xaml.ps1
│ ├── Examples
│ │ ├── flyin.ps1
│ │ ├── Gradient.ps1
│ │ ├── ListView.ps1
│ │ ├── Stopwatch.ps1
│ │ ├── DataTemplate.ps1
│ │ ├── DigitalClock.ps1
│ │ ├── FlowDocument.ps1
│ │ ├── RunCommand.ps1
│ │ ├── Show-Module.ps1
│ │ ├── SimpleDialog.ps1
│ │ ├── CmdletExample.ps1
│ │ ├── ImportWinForms.ps1
│ │ ├── ListBoxSamples.ps1
│ │ ├── MutlitouchDraw.ps1
│ │ ├── SkewAnimation.ps1
│ │ ├── AddGridRowExample.ps1
│ │ ├── CanvasFromDesign.ps1
│ │ ├── EllipseAnimation.ps1
│ │ ├── MutlitouchImage.ps1
│ │ ├── canvasfromblend.ps1
│ │ ├── MoveControlExamples.ps1
│ │ ├── MixingArgumentFormats.ps1
│ │ ├── PowerShellDataSources.ps1
│ │ ├── RichTextBoxAndCommands.ps1
│ │ └── AnimatedLinesFromCenter.ps1
│ ├── Get-ChildControl.ps1
│ ├── Hide-UIElement.ps1
│ ├── Show-UIElement.ps1
│ ├── Start-Animation.ps1
│ ├── Test-Descendent.ps1
│ ├── Enable-Multitouch.ps1
│ ├── Export-Application.ps1
│ ├── Get-CommandPlugin.ps1
│ ├── ConvertTo-GridLength.ps1
│ ├── Get-HashtableAsObject.ps1
│ ├── Get-ReferencedCommand.ps1
│ ├── Get-UIElementPosition.ps1
│ ├── Remove-ChildControl.ps1
│ ├── Add-CodeGenerationRule.ps1
│ ├── ConvertTo-DataTemplate.ps1
│ ├── Copy-DependencyProperty.ps1
│ ├── Get-CommonParentControl.ps1
│ ├── Get-DependencyProperty.ps1
│ ├── Set-DependencyProperty.ps1
│ ├── Start-PowerShellCommand.ps1
│ ├── Stop-PowerShellCommand.ps1
│ ├── Get-PowerShellDataSource.ps1
│ ├── Register-PowerShellCommand.ps1
│ ├── ConvertTo-ParameterMetaData.ps1
│ ├── Join-PowerShellCommandOutput.ps1
│ ├── Rules
│ │ └── WPFCodeGenerationRules.ps1
│ ├── Unregister-PowerShellCommand.ps1
│ └── ConvertFrom-TypeToScriptCmdlet.ps1
├── PSRSS
│ ├── PSRSS.psd1
│ ├── PSRSS.psm1
│ ├── Get-Feed.ps1
│ ├── New-Feed.ps1
│ ├── Get-Article.ps1
│ ├── Remove-Feed.ps1
│ ├── Read-Article.ps1
│ ├── Remove-Article.ps1
│ └── En-Us
│ │ ├── about_PSRSS_Readme.help.txt
│ │ └── about_PSRSS_Module.help.txt
├── DotNet
│ ├── DotNet.psm1
│ ├── Get-Type.ps1
│ ├── Get-ProgID.ps1
│ └── Get-CommandWithParameterType.ps1
├── IsePack
│ ├── Colorize.ps1
│ ├── IsePack.psd1
│ ├── IsePack.psm1
│ ├── Add-IseMenu.ps1
│ ├── Invoke-Line.ps1
│ ├── Push-Module.ps1
│ ├── Show-Member.ps1
│ ├── Add-InlineHelp.ps1
│ ├── Add-Parameter.ps1
│ ├── Get-ShellVerb.ps1
│ ├── New-IseScript.ps1
│ ├── Split-IseFile.ps1
│ ├── Add-IfStatement.ps1
│ ├── Export-FormatView.ps1
│ ├── Get-CurrentToken.ps1
│ ├── Get-TokenFromFile.ps1
│ ├── Move-ToLastGroup.ps1
│ ├── Move-ToNextGroup.ps1
│ ├── Select-AllInFile.ps1
│ ├── Add-SwitchStatement.ps1
│ ├── Get-CurrentFunction.ps1
│ ├── Select-CurrentText.ps1
│ ├── Add-ForeachStatement.ps1
│ ├── Close-AllOpenedFiles.ps1
│ ├── Get-FunctionFromFile.ps1
│ ├── Show-TypeConstructor.ps1
│ ├── Switch-CommentOrText.ps1
│ ├── Move-ToLastPowerShellTab.ps1
│ ├── Move-ToNextPowerShellTab.ps1
│ ├── Push-CurrentFileLocation.ps1
│ ├── Save-IseFileWithAutoName.ps1
│ ├── Select-CurrentTextAsType.ps1
│ ├── ConvertTo-ShortcutKeyTable.ps1
│ ├── Get-CurrentOpenedFileToken.ps1
│ ├── Select-CurrentTextAsCommand.ps1
│ ├── Select-CurrentTextAsVariable.ps1
│ ├── Show-HelpForCurrentSelection.ps1
│ ├── Show-SyntaxForCurrentCommand.ps1
│ ├── Switch-SelectedCommentOrText.ps1
│ ├── En-US
│ │ ├── about_IsePack_Readme.help.txt
│ │ └── about_ISEPack_Module.help.txt
│ ├── Show-TypeConstructorForCurrentType.ps1
│ ├── New-ScriptModuleFromCurrentLocation.ps1
│ └── Add-PInvoke.ps1
├── FileSystem
│ ├── Get-SHA1.ps1
│ ├── New-Zip.ps1
│ ├── Copy-ToZip.ps1
│ ├── FileSystem.psd1
│ ├── FileSystem.psm1
│ ├── Rename-Drive.ps1
│ ├── Get-DuplicateFile.ps1
│ ├── Get-FreeDiskSpace.ps1
│ ├── Mount-SpecialFolder.ps1
│ ├── Resolve-ShortcutFile.ps1
│ ├── Start-FileSystemWatcher.ps1
│ └── en-us
│ │ ├── about_FileSystem_Module.help.txt
│ │ └── about_FileSystem_Readme.help.txt
├── PSCodeGen
│ ├── New-Enum.ps1
│ ├── PSCodeGen.psd1
│ ├── PSCodeGen.psm1
│ ├── New-PInvoke.ps1
│ └── New-ScriptCmdlet.ps1
├── PSImageTools
│ ├── Get-Image.ps1
│ ├── Background.png
│ ├── Add-CropFilter.ps1
│ ├── ConvertTo-Jpeg.ps1
│ ├── PSImageTools.psd1
│ ├── PSImageTools.psm1
│ ├── Add-OverlayFilter.ps1
│ ├── Add-ScaleFilter.ps1
│ ├── ConvertTo-Bitmap.ps1
│ ├── Get-ImageProperty.ps1
│ ├── Set-ImageFilter.ps1
│ ├── Add-RotateFlipFilter.ps1
│ ├── Example
│ │ ├── SortByCamera.ps1
│ │ └── FilterImagesInDirectory.ps1
│ ├── FilterImagesInDirectory.ps1
│ ├── Copy-ImageIntoOrganizedFolder.ps1
│ └── En-US
│ │ ├── about_PSImageTools_Readme.help.txt
│ │ └── about_PSImageTools_Module.help.txt
├── PSSystemTools
│ ├── Get-Font.ps1
│ ├── Get-USB.ps1
│ ├── Test-32Bit.ps1
│ ├── Test-64Bit.ps1
│ ├── Get-OSVersion.ps1
│ ├── Get-Processor.ps1
│ ├── Get-BootStatus.ps1
│ ├── Get-SystemFont.ps1
│ ├── Import-IniFile.ps1
│ ├── PSSystemTools.psd1
│ ├── PSSystemTools.psm1
│ ├── Get-DisplaySetting.ps1
│ ├── Get-WindowsEdition.ps1
│ ├── Get-MultiTouchMaximum.ps1
│ ├── Get-LogicalDiskInventory.ps1
│ └── en-us
│ │ ├── about_PSSystemTools_Readme.help.txt
│ │ └── about_System_Module.help.txt
├── TaskScheduler
│ ├── New-Task.ps1
│ ├── Remove-Task.ps1
│ ├── Start-Task.ps1
│ ├── Stop-Task.ps1
│ ├── Add-TaskAction.ps1
│ ├── Add-TaskTrigger.ps1
│ ├── Get-RunningTask.ps1
│ ├── TaskScheduler.psd1
│ ├── TaskScheduler.psm1
│ ├── Examples
│ │ ├── example1.ps1
│ │ ├── example2.ps1
│ │ ├── example3.ps1
│ │ ├── example4.ps1
│ │ ├── example5.ps1
│ │ └── example6.ps1
│ ├── Get-ScheduledTask.ps1
│ ├── Connect-ToTaskScheduler.ps1
│ ├── Register-ScheduledTask.ps1
│ ├── TaskScheduler.Format.ps1xml
│ └── TaskScheduler.Types.ps1xml
├── PSUserTools
│ ├── Get-Everyone.ps1
│ ├── PSUserTools.psd1
│ ├── PSUserTools.psm1
│ ├── Get-CurrentUser.ps1
│ ├── Test-IsAdministrator.ps1
│ ├── Start-ProcessAsAdministrator.ps1
│ └── En-US
│ │ ├── about_PSUserTools_Readme.help.txt
│ │ └── about_PSUserTools_Module.help.txt
├── PowerShellPack
│ ├── PowerShellPack.psm1
│ └── PowershellPack.psd1
├── SushiHangover-Tools
│ ├── Clear-Trash.ps1
│ ├── Initialize-File.ps1
│ ├── Process-VolumeDefrag.ps1
│ ├── SushiHangover-Tools.psd1
│ ├── foobar
│ │ ├── runas.ps1
│ │ ├── Do-IPAddress.ps1
│ │ └── Get-RandomString.ps1
│ ├── SushiHangover-Tools.psm1
│ ├── Test-IsElevatedUser.ps1
│ ├── Remove-ComObjectsFromMemory.ps1
│ ├── Get-RemovableMedia.ps1
│ ├── SushiHangover-Tools.ps1
│ ├── Uninstall-Software.ps1
│ ├── Sleep-Computer.ps1
│ ├── Dismount-RemovableMedia.ps1
│ ├── Get-InstalledSoftware.ps1
│ ├── Clear-IECache.ps1
│ ├── Disable-WindowsSearch.ps1
│ ├── Get-WindowsLicenseStatus.ps1
│ ├── Do-FileEncoding.ps1
│ ├── Test-ModuleLoaded.ps1
│ ├── Process-RawPipe.ps1
│ ├── Process-Grep.ps1
│ ├── MyCredentials.ps1
│ ├── GZip.ps1
│ ├── ClearIECache.cs
│ ├── Get-GeoIP.ps1
│ └── Install-WindowsUpdates.ps1
├── Writing User Interfaces with WPK.docx
├── About the Windows 7 Resource Kit PowerShell Pack.docx
├── SushiHangover-RSACrypto
│ ├── UnitTest-RSACrypto.ps1
│ └── SushiHangover-RSACrypto.psm1
├── Setup
│ ├── PowerShellPack.wixproj
│ └── PowerShellPack.wxs
└── SushiHangover-Transcripts
│ └── SushiHangover-Transcripts.psm1
├── Microsoft.PowerShell_profile.ps1
└── LICENSE
/README:
--------------------------------------------------------------------------------
1 | PowerShell Scripts are from sushihangover.blogspot.com
2 |
3 |
--------------------------------------------------------------------------------
/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/.DS_Store
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | Transcripts
2 |
3 | modules/.DS_Store
4 |
5 | modules/SushiHangover-Tools/.DS_Store
6 |
--------------------------------------------------------------------------------
/modules/Readme1st.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/Readme1st.txt
--------------------------------------------------------------------------------
/modules/WPK/WPF.ps1xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/WPF.ps1xml
--------------------------------------------------------------------------------
/modules/WPK/WPK.psd1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/WPK.psd1
--------------------------------------------------------------------------------
/modules/WPK/WPK.psm1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/WPK.psm1
--------------------------------------------------------------------------------
/modules/PSRSS/PSRSS.psd1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSRSS/PSRSS.psd1
--------------------------------------------------------------------------------
/modules/PSRSS/PSRSS.psm1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSRSS/PSRSS.psm1
--------------------------------------------------------------------------------
/modules/DotNet/DotNet.psm1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/DotNet/DotNet.psm1
--------------------------------------------------------------------------------
/modules/DotNet/Get-Type.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/DotNet/Get-Type.ps1
--------------------------------------------------------------------------------
/modules/PSRSS/Get-Feed.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSRSS/Get-Feed.ps1
--------------------------------------------------------------------------------
/modules/PSRSS/New-Feed.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSRSS/New-Feed.ps1
--------------------------------------------------------------------------------
/modules/WPK/Add-GridRow.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Add-GridRow.ps1
--------------------------------------------------------------------------------
/modules/WPK/Show-Window.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Show-Window.ps1
--------------------------------------------------------------------------------
/modules/DotNet/Get-ProgID.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/DotNet/Get-ProgID.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Colorize.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Colorize.ps1
--------------------------------------------------------------------------------
/modules/IsePack/IsePack.psd1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/IsePack.psd1
--------------------------------------------------------------------------------
/modules/IsePack/IsePack.psm1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/IsePack.psm1
--------------------------------------------------------------------------------
/modules/PSRSS/Get-Article.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSRSS/Get-Article.ps1
--------------------------------------------------------------------------------
/modules/PSRSS/Remove-Feed.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSRSS/Remove-Feed.ps1
--------------------------------------------------------------------------------
/modules/WPK/Close-Control.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Close-Control.ps1
--------------------------------------------------------------------------------
/modules/WPK/Get-Resource.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Get-Resource.ps1
--------------------------------------------------------------------------------
/modules/WPK/Move-Control.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Move-Control.ps1
--------------------------------------------------------------------------------
/modules/WPK/Set-Property.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Set-Property.ps1
--------------------------------------------------------------------------------
/modules/WPK/Set-Resource.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Set-Resource.ps1
--------------------------------------------------------------------------------
/modules/WPK/Start-WPFJob.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Start-WPFJob.ps1
--------------------------------------------------------------------------------
/modules/WPK/Test-Ancestor.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Test-Ancestor.ps1
--------------------------------------------------------------------------------
/modules/WPK/Update-WPFJob.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Update-WPFJob.ps1
--------------------------------------------------------------------------------
/Microsoft.PowerShell_profile.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/Microsoft.PowerShell_profile.ps1
--------------------------------------------------------------------------------
/modules/FileSystem/Get-SHA1.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/FileSystem/Get-SHA1.ps1
--------------------------------------------------------------------------------
/modules/FileSystem/New-Zip.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/FileSystem/New-Zip.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Add-IseMenu.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Add-IseMenu.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Invoke-Line.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Invoke-Line.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Push-Module.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Push-Module.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Show-Member.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Show-Member.ps1
--------------------------------------------------------------------------------
/modules/PSCodeGen/New-Enum.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSCodeGen/New-Enum.ps1
--------------------------------------------------------------------------------
/modules/PSCodeGen/PSCodeGen.psd1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSCodeGen/PSCodeGen.psd1
--------------------------------------------------------------------------------
/modules/PSCodeGen/PSCodeGen.psm1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSCodeGen/PSCodeGen.psm1
--------------------------------------------------------------------------------
/modules/PSRSS/Read-Article.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSRSS/Read-Article.ps1
--------------------------------------------------------------------------------
/modules/PSRSS/Remove-Article.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSRSS/Remove-Article.ps1
--------------------------------------------------------------------------------
/modules/WPK/Add-ChildControl.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Add-ChildControl.ps1
--------------------------------------------------------------------------------
/modules/WPK/Add-EventHandler.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Add-EventHandler.ps1
--------------------------------------------------------------------------------
/modules/WPK/Add-GridColumn.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Add-GridColumn.ps1
--------------------------------------------------------------------------------
/modules/WPK/ConvertTo-Xaml.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/ConvertTo-Xaml.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/flyin.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/flyin.ps1
--------------------------------------------------------------------------------
/modules/WPK/Get-ChildControl.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Get-ChildControl.ps1
--------------------------------------------------------------------------------
/modules/WPK/Hide-UIElement.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Hide-UIElement.ps1
--------------------------------------------------------------------------------
/modules/WPK/Show-UIElement.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Show-UIElement.ps1
--------------------------------------------------------------------------------
/modules/WPK/Start-Animation.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Start-Animation.ps1
--------------------------------------------------------------------------------
/modules/WPK/Test-Descendent.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Test-Descendent.ps1
--------------------------------------------------------------------------------
/modules/FileSystem/Copy-ToZip.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/FileSystem/Copy-ToZip.ps1
--------------------------------------------------------------------------------
/modules/FileSystem/FileSystem.psd1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/FileSystem/FileSystem.psd1
--------------------------------------------------------------------------------
/modules/FileSystem/FileSystem.psm1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/FileSystem/FileSystem.psm1
--------------------------------------------------------------------------------
/modules/IsePack/Add-InlineHelp.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Add-InlineHelp.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Add-Parameter.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Add-Parameter.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Get-ShellVerb.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Get-ShellVerb.ps1
--------------------------------------------------------------------------------
/modules/IsePack/New-IseScript.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/New-IseScript.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Split-IseFile.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Split-IseFile.ps1
--------------------------------------------------------------------------------
/modules/PSCodeGen/New-PInvoke.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSCodeGen/New-PInvoke.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/Get-Image.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/Get-Image.ps1
--------------------------------------------------------------------------------
/modules/PSSystemTools/Get-Font.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/Get-Font.ps1
--------------------------------------------------------------------------------
/modules/PSSystemTools/Get-USB.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/Get-USB.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/New-Task.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/New-Task.ps1
--------------------------------------------------------------------------------
/modules/WPK/Enable-Multitouch.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Enable-Multitouch.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/Gradient.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/Gradient.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/ListView.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/ListView.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/Stopwatch.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/Stopwatch.ps1
--------------------------------------------------------------------------------
/modules/WPK/Export-Application.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Export-Application.ps1
--------------------------------------------------------------------------------
/modules/WPK/Get-CommandPlugin.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Get-CommandPlugin.ps1
--------------------------------------------------------------------------------
/modules/FileSystem/Rename-Drive.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/FileSystem/Rename-Drive.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Add-IfStatement.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Add-IfStatement.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Export-FormatView.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Export-FormatView.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Get-CurrentToken.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Get-CurrentToken.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Get-TokenFromFile.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Get-TokenFromFile.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Move-ToLastGroup.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Move-ToLastGroup.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Move-ToNextGroup.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Move-ToNextGroup.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Select-AllInFile.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Select-AllInFile.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/Background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/Background.png
--------------------------------------------------------------------------------
/modules/PSSystemTools/Test-32Bit.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/Test-32Bit.ps1
--------------------------------------------------------------------------------
/modules/PSSystemTools/Test-64Bit.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/Test-64Bit.ps1
--------------------------------------------------------------------------------
/modules/PSUserTools/Get-Everyone.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSUserTools/Get-Everyone.ps1
--------------------------------------------------------------------------------
/modules/PSUserTools/PSUserTools.psd1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSUserTools/PSUserTools.psd1
--------------------------------------------------------------------------------
/modules/PSUserTools/PSUserTools.psm1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSUserTools/PSUserTools.psm1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Remove-Task.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Remove-Task.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Start-Task.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Start-Task.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Stop-Task.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Stop-Task.ps1
--------------------------------------------------------------------------------
/modules/WPK/ConvertTo-GridLength.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/ConvertTo-GridLength.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/DataTemplate.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/DataTemplate.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/DigitalClock.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/DigitalClock.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/FlowDocument.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/FlowDocument.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/RunCommand.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/RunCommand.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/Show-Module.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/Show-Module.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/SimpleDialog.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/SimpleDialog.ps1
--------------------------------------------------------------------------------
/modules/WPK/Get-HashtableAsObject.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Get-HashtableAsObject.ps1
--------------------------------------------------------------------------------
/modules/WPK/Get-ReferencedCommand.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Get-ReferencedCommand.ps1
--------------------------------------------------------------------------------
/modules/WPK/Get-UIElementPosition.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Get-UIElementPosition.ps1
--------------------------------------------------------------------------------
/modules/WPK/Remove-ChildControl.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Remove-ChildControl.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Add-SwitchStatement.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Add-SwitchStatement.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Get-CurrentFunction.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Get-CurrentFunction.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Select-CurrentText.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Select-CurrentText.ps1
--------------------------------------------------------------------------------
/modules/PSCodeGen/New-ScriptCmdlet.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSCodeGen/New-ScriptCmdlet.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/Add-CropFilter.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/Add-CropFilter.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/ConvertTo-Jpeg.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/ConvertTo-Jpeg.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/PSImageTools.psd1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/PSImageTools.psd1
--------------------------------------------------------------------------------
/modules/PSImageTools/PSImageTools.psm1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/PSImageTools.psm1
--------------------------------------------------------------------------------
/modules/PSSystemTools/Get-OSVersion.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/Get-OSVersion.ps1
--------------------------------------------------------------------------------
/modules/PSSystemTools/Get-Processor.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/Get-Processor.ps1
--------------------------------------------------------------------------------
/modules/PSUserTools/Get-CurrentUser.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSUserTools/Get-CurrentUser.ps1
--------------------------------------------------------------------------------
/modules/WPK/Add-CodeGenerationRule.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Add-CodeGenerationRule.ps1
--------------------------------------------------------------------------------
/modules/WPK/ConvertTo-DataTemplate.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/ConvertTo-DataTemplate.ps1
--------------------------------------------------------------------------------
/modules/WPK/Copy-DependencyProperty.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Copy-DependencyProperty.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/CmdletExample.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/CmdletExample.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/ImportWinForms.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/ImportWinForms.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/ListBoxSamples.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/ListBoxSamples.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/MutlitouchDraw.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/MutlitouchDraw.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/SkewAnimation.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/SkewAnimation.ps1
--------------------------------------------------------------------------------
/modules/WPK/Get-CommonParentControl.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Get-CommonParentControl.ps1
--------------------------------------------------------------------------------
/modules/WPK/Get-DependencyProperty.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Get-DependencyProperty.ps1
--------------------------------------------------------------------------------
/modules/WPK/Set-DependencyProperty.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Set-DependencyProperty.ps1
--------------------------------------------------------------------------------
/modules/WPK/Start-PowerShellCommand.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Start-PowerShellCommand.ps1
--------------------------------------------------------------------------------
/modules/WPK/Stop-PowerShellCommand.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Stop-PowerShellCommand.ps1
--------------------------------------------------------------------------------
/modules/FileSystem/Get-DuplicateFile.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/FileSystem/Get-DuplicateFile.ps1
--------------------------------------------------------------------------------
/modules/FileSystem/Get-FreeDiskSpace.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/FileSystem/Get-FreeDiskSpace.ps1
--------------------------------------------------------------------------------
/modules/FileSystem/Mount-SpecialFolder.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/FileSystem/Mount-SpecialFolder.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Add-ForeachStatement.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Add-ForeachStatement.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Close-AllOpenedFiles.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Close-AllOpenedFiles.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Get-FunctionFromFile.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Get-FunctionFromFile.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Show-TypeConstructor.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Show-TypeConstructor.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Switch-CommentOrText.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Switch-CommentOrText.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/Add-OverlayFilter.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/Add-OverlayFilter.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/Add-ScaleFilter.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/Add-ScaleFilter.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/ConvertTo-Bitmap.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/ConvertTo-Bitmap.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/Get-ImageProperty.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/Get-ImageProperty.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/Set-ImageFilter.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/Set-ImageFilter.ps1
--------------------------------------------------------------------------------
/modules/PSSystemTools/Get-BootStatus.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/Get-BootStatus.ps1
--------------------------------------------------------------------------------
/modules/PSSystemTools/Get-SystemFont.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/Get-SystemFont.ps1
--------------------------------------------------------------------------------
/modules/PSSystemTools/Import-IniFile.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/Import-IniFile.ps1
--------------------------------------------------------------------------------
/modules/PSSystemTools/PSSystemTools.psd1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/PSSystemTools.psd1
--------------------------------------------------------------------------------
/modules/PSSystemTools/PSSystemTools.psm1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/PSSystemTools.psm1
--------------------------------------------------------------------------------
/modules/PowerShellPack/PowerShellPack.psm1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PowerShellPack/PowerShellPack.psm1
--------------------------------------------------------------------------------
/modules/PowerShellPack/PowershellPack.psd1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PowerShellPack/PowershellPack.psd1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Add-TaskAction.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Add-TaskAction.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Add-TaskTrigger.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Add-TaskTrigger.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Get-RunningTask.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Get-RunningTask.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/TaskScheduler.psd1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/TaskScheduler.psd1
--------------------------------------------------------------------------------
/modules/TaskScheduler/TaskScheduler.psm1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/TaskScheduler.psm1
--------------------------------------------------------------------------------
/modules/WPK/Examples/AddGridRowExample.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/AddGridRowExample.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/CanvasFromDesign.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/CanvasFromDesign.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/EllipseAnimation.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/EllipseAnimation.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/MutlitouchImage.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/MutlitouchImage.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/canvasfromblend.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/canvasfromblend.ps1
--------------------------------------------------------------------------------
/modules/WPK/Get-PowerShellDataSource.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Get-PowerShellDataSource.ps1
--------------------------------------------------------------------------------
/modules/WPK/Register-PowerShellCommand.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Register-PowerShellCommand.ps1
--------------------------------------------------------------------------------
/modules/FileSystem/Resolve-ShortcutFile.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/FileSystem/Resolve-ShortcutFile.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Move-ToLastPowerShellTab.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Move-ToLastPowerShellTab.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Move-ToNextPowerShellTab.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Move-ToNextPowerShellTab.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Push-CurrentFileLocation.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Push-CurrentFileLocation.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Save-IseFileWithAutoName.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Save-IseFileWithAutoName.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Select-CurrentTextAsType.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Select-CurrentTextAsType.ps1
--------------------------------------------------------------------------------
/modules/PSSystemTools/Get-DisplaySetting.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/Get-DisplaySetting.ps1
--------------------------------------------------------------------------------
/modules/PSSystemTools/Get-WindowsEdition.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/Get-WindowsEdition.ps1
--------------------------------------------------------------------------------
/modules/PSUserTools/Test-IsAdministrator.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSUserTools/Test-IsAdministrator.ps1
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Clear-Trash.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/SushiHangover-Tools/Clear-Trash.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Examples/example1.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Examples/example1.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Examples/example2.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Examples/example2.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Examples/example3.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Examples/example3.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Examples/example4.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Examples/example4.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Examples/example5.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Examples/example5.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Examples/example6.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Examples/example6.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Get-ScheduledTask.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Get-ScheduledTask.ps1
--------------------------------------------------------------------------------
/modules/WPK/ConvertTo-ParameterMetaData.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/ConvertTo-ParameterMetaData.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/MoveControlExamples.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/MoveControlExamples.ps1
--------------------------------------------------------------------------------
/modules/WPK/Join-PowerShellCommandOutput.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Join-PowerShellCommandOutput.ps1
--------------------------------------------------------------------------------
/modules/WPK/Rules/WPFCodeGenerationRules.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Rules/WPFCodeGenerationRules.ps1
--------------------------------------------------------------------------------
/modules/WPK/Unregister-PowerShellCommand.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Unregister-PowerShellCommand.ps1
--------------------------------------------------------------------------------
/modules/DotNet/Get-CommandWithParameterType.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/DotNet/Get-CommandWithParameterType.ps1
--------------------------------------------------------------------------------
/modules/FileSystem/Start-FileSystemWatcher.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/FileSystem/Start-FileSystemWatcher.ps1
--------------------------------------------------------------------------------
/modules/IsePack/ConvertTo-ShortcutKeyTable.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/ConvertTo-ShortcutKeyTable.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Get-CurrentOpenedFileToken.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Get-CurrentOpenedFileToken.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Select-CurrentTextAsCommand.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Select-CurrentTextAsCommand.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/Add-RotateFlipFilter.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/Add-RotateFlipFilter.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/Example/SortByCamera.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/Example/SortByCamera.ps1
--------------------------------------------------------------------------------
/modules/PSRSS/En-Us/about_PSRSS_Readme.help.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSRSS/En-Us/about_PSRSS_Readme.help.txt
--------------------------------------------------------------------------------
/modules/PSSystemTools/Get-MultiTouchMaximum.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/Get-MultiTouchMaximum.ps1
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Initialize-File.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/SushiHangover-Tools/Initialize-File.ps1
--------------------------------------------------------------------------------
/modules/WPK/ConvertFrom-TypeToScriptCmdlet.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/ConvertFrom-TypeToScriptCmdlet.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/MixingArgumentFormats.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/MixingArgumentFormats.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/PowerShellDataSources.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/PowerShellDataSources.ps1
--------------------------------------------------------------------------------
/modules/WPK/Examples/RichTextBoxAndCommands.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/RichTextBoxAndCommands.ps1
--------------------------------------------------------------------------------
/modules/Writing User Interfaces with WPK.docx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/Writing User Interfaces with WPK.docx
--------------------------------------------------------------------------------
/modules/IsePack/Select-CurrentTextAsVariable.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Select-CurrentTextAsVariable.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Show-HelpForCurrentSelection.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Show-HelpForCurrentSelection.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Show-SyntaxForCurrentCommand.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Show-SyntaxForCurrentCommand.ps1
--------------------------------------------------------------------------------
/modules/IsePack/Switch-SelectedCommentOrText.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Switch-SelectedCommentOrText.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/FilterImagesInDirectory.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/FilterImagesInDirectory.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Connect-ToTaskScheduler.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Connect-ToTaskScheduler.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/Register-ScheduledTask.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/Register-ScheduledTask.ps1
--------------------------------------------------------------------------------
/modules/TaskScheduler/TaskScheduler.Format.ps1xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/TaskScheduler.Format.ps1xml
--------------------------------------------------------------------------------
/modules/TaskScheduler/TaskScheduler.Types.ps1xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/TaskScheduler/TaskScheduler.Types.ps1xml
--------------------------------------------------------------------------------
/modules/WPK/Examples/AnimatedLinesFromCenter.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/WPK/Examples/AnimatedLinesFromCenter.ps1
--------------------------------------------------------------------------------
/modules/IsePack/En-US/about_IsePack_Readme.help.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/En-US/about_IsePack_Readme.help.txt
--------------------------------------------------------------------------------
/modules/PSSystemTools/Get-LogicalDiskInventory.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/Get-LogicalDiskInventory.ps1
--------------------------------------------------------------------------------
/modules/PSUserTools/Start-ProcessAsAdministrator.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSUserTools/Start-ProcessAsAdministrator.ps1
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Process-VolumeDefrag.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/SushiHangover-Tools/Process-VolumeDefrag.ps1
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/SushiHangover-Tools.psd1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/SushiHangover-Tools/SushiHangover-Tools.psd1
--------------------------------------------------------------------------------
/modules/IsePack/Show-TypeConstructorForCurrentType.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/Show-TypeConstructorForCurrentType.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/Copy-ImageIntoOrganizedFolder.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/Copy-ImageIntoOrganizedFolder.ps1
--------------------------------------------------------------------------------
/modules/IsePack/New-ScriptModuleFromCurrentLocation.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/IsePack/New-ScriptModuleFromCurrentLocation.ps1
--------------------------------------------------------------------------------
/modules/PSImageTools/Example/FilterImagesInDirectory.ps1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/Example/FilterImagesInDirectory.ps1
--------------------------------------------------------------------------------
/modules/PSUserTools/En-US/about_PSUserTools_Readme.help.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSUserTools/En-US/about_PSUserTools_Readme.help.txt
--------------------------------------------------------------------------------
/modules/About the Windows 7 Resource Kit PowerShell Pack.docx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/About the Windows 7 Resource Kit PowerShell Pack.docx
--------------------------------------------------------------------------------
/modules/PSImageTools/En-US/about_PSImageTools_Readme.help.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSImageTools/En-US/about_PSImageTools_Readme.help.txt
--------------------------------------------------------------------------------
/modules/PSSystemTools/en-us/about_PSSystemTools_Readme.help.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sushihangover/SushiHangover-PowerShell/HEAD/modules/PSSystemTools/en-us/about_PSSystemTools_Readme.help.txt
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/foobar/runas.ps1:
--------------------------------------------------------------------------------
1 | If (-NOT ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator"))
2 |
3 | {
4 | $arguments = "& '" + $myinvocation.mycommand.definition + "'"
5 | Start-Process powershell -Verb runAs -ArgumentList $arguments
6 | Break
7 | }
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/SushiHangover-Tools.psm1:
--------------------------------------------------------------------------------
1 | <#
2 | .NOTES
3 | Copyright 2013 Robert Nees
4 | Licensed under the Apache License, Version 2.0 (the "License");
5 | http://sushihangover.blogspot.com
6 | .SYNOPSIS
7 | Script module for SushiHangover-Tools
8 | .DESCRIPTION
9 | Script module for SushiHangover-Tools
10 | .LINK
11 | http://sushihangover.blogspot.com
12 | .LINK
13 | https://github.com/sushihangover
14 | #>
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Test-IsElevatedUser.ps1:
--------------------------------------------------------------------------------
1 | function Test-IsElevatedUser {
2 | <#
3 | .NOTES
4 | Copyright 2013 Robert Nees
5 | Licensed under the Apache License, Version 2.0 (the "License");
6 | http://sushihangover.blogspot.com
7 | .SYNOPSIS
8 | Elevated Privileges
9 | .DESCRIPTION
10 | Checks if the current Powershell instance is running with elevated privileges or not.
11 | .OUTPUTS
12 | System.Boolean : True if the current Powershell user is elevated, false if not.
13 | .EXAMPLE
14 | C:\PS>Test-IsElevatedUser
15 | False
16 | .LINK
17 | http://sushihangover.blogspot.com
18 | https://github.com/sushihangover
19 | #>
20 | param ()
21 | $IsElevatedUser = $false
22 | try {
23 | $WindowsIdentity = [Security.Principal.WindowsIdentity]::GetCurrent()
24 | $WindowsPrincipal = New-Object Security.Principal.WindowsPrincipal -ArgumentList $WindowsIdentity
25 | $IsElevatedUser = $WindowsPrincipal.IsInRole( [Security.Principal.WindowsBuiltInRole]::Administrator )
26 | } catch {
27 | throw "Elevated privileges is undetermined; the error was: '{0}'." -f $_
28 | }
29 | return $IsElevatedUser
30 | }
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Remove-ComObjectsFromMemory.ps1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | function Remove-ComObjectsFromMemory {
3 | <#
4 | .NOTES
5 | Copyright 2012 Robert Nees
6 | Licensed under the Apache License, Version 2.0 (the "License");
7 | http://sushihangover.blogspot.com
8 | .SYNOPSIS
9 | Releases all <__ComObject> objects in the caller scope.
10 | .DESCRIPTION
11 | Releases all <__ComObject> objects in the caller scope, except for those that are Read-Only or Constant.
12 | .EXAMPLE
13 | Remove-ComObject -Verbose
14 | Description
15 | ===========
16 | Releases <__ComObject> objects in the caller scope and displays the released COM objects' variable names.
17 | .LINK
18 | http://sushihangover.blogspot.com
19 | #>
20 | [CmdletBinding()]
21 | param()
22 | begin {
23 | }
24 | end {
25 | [Management.Automation.ScopedItemOptions]$scopedOpt = 'ReadOnly, Constant'
26 | Get-Variable -Scope 1 | Where-Object {
27 | $_.Value.pstypenames -contains 'System.__ComObject' -and -not ($scopedOpt -band $_.Options)
28 | } | Remove-Variable -Scope 1 -Verbose
29 | [GC]::Collect()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/modules/PSUserTools/En-US/about_PSUserTools_Module.help.txt:
--------------------------------------------------------------------------------
1 | TOPIC
2 | about_PSUserTools_Module
3 |
4 | SHORT DESCRIPTION
5 | Describes the PSUserTools module in the Windows 7 Resource Kit.
6 |
7 | LONG DESCRIPTION
8 | The PSUserTools module contains functions that manage and edit users and user
9 | groups on the computer.
10 |
11 | The PSUserTools module adds the following functions to your session when you import
12 | the module.
13 |
14 |
15 | Get-CurrentUser Gets information about the current user.
16 | Get-Everyone Gets information about all local accounts on the computer.
17 | Start-ProcessAsAdministrator Starts a process with Administrator permssions
18 | ("Run as administrator").
19 |
20 | Test-IsAdministrator Returns TRUE when the current user is an administrator.
21 |
22 | For information about these functions, use the Get-Help cmdlet. For example,
23 | to get detailed help for the Get-Feed function, type "get-help get-everyone -detailed."
24 |
25 | These functions are implemented in the module as scripts, but are available in the session
26 | as functions.
27 |
28 |
29 | SEE ALSO
30 | about_Modules
31 | Get-Module
32 | Import-Module
33 | Remove-Module
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Get-RemovableMedia.ps1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | Function Get-RemovableMedia {
3 | <#
4 | .NOTES
5 | Copyright 2012/2013 Robert Nees
6 | Licensed under the Apache License, Version 2.0 (the "License");
7 | http://sushihangover.blogspot.com
8 | .SYNOPSIS
9 | List Removable Media
10 | .DESCRIPTION
11 | This scripts provides a way to list ('pipe-able' output) the removable media drives/information.
12 |
13 | Output are "Win32_LogicalDisk' objects
14 | .EXAMPLE
15 | Get-RemovableMedia
16 |
17 | DeviceID : E:
18 | DriveType : 2
19 | ProviderName :
20 | FreeSpace : 996462592
21 | Size : 1012469760
22 | VolumeName :
23 | .EXAMPLE
24 | Get-RemovableMedia | ForEach-Object{$_.DeviceID}
25 |
26 | A:
27 | E:
28 | .LINK
29 | http://sushihangover.blogspot.com
30 | .LINK
31 | https://github.com/sushihangover
32 | #>
33 | Param (
34 | )
35 | Begin {
36 | $RemovableMediaDrives = Get-WMIObject Win32_LogicalDisk -filter "DriveType=2"
37 | }
38 | Process {
39 | ForEach ($RemovableMedia in $RemovableMediaDrives) {
40 | $RemovableMedia
41 | }
42 | }
43 | End {
44 | $RemovableMedia = $null
45 | }
46 | }
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/SushiHangover-Tools.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .NOTES
3 | Copyright 2012/2013 Robert Nees
4 | Licensed under the Apache License, Version 2.0 (the "License");
5 | http://sushihangover.blogspot.com
6 | .SYNOPSIS
7 | Script module called by SushiHangover-Tools.psd1
8 | .DESCRIPTION
9 | Script module called by SushiHangover-Tools.psd1
10 | .LINK
11 | http://sushihangover.blogspot.com
12 | .LINK
13 | https://github.com/sushihangover
14 | #>
15 | . $psScriptRoot\Initialize-File.ps1
16 | . $psScriptRoot\Clear-Trash.ps1
17 | . $psScriptRoot\Do-FileEncoding.ps1
18 | . $psScriptRoot\Get-WindowsLicenseStatus.ps1
19 | . $psScriptRoot\Remove-ComObjectsFromMemory.ps1
20 | . $psScriptRoot\Uninstall-Software.ps1
21 | . $psScriptRoot\Get-InstalledSoftware.ps1
22 | . $psScriptRoot\Dismount-RemovableMedia.ps1
23 | . $psScriptRoot\Get-RemovableMedia.ps1
24 | . $psScriptRoot\MyCredentials.ps1
25 | . $psScriptRoot\Test-IsElevatedUser.ps1
26 | . $psScriptRoot\Install-WindowsUpdates.ps1
27 | . $psScriptRoot\Clear-Trash.ps1
28 | . $psScriptRoot\Process-VolumeDefrag.ps1
29 | . $psScriptRoot\Disable-WindowsSearch.ps1
30 | . $psScriptRoot\Sleep-Computer.ps1
31 | . $psScriptRoot\Clear-IECache.ps1
32 | . $psScriptRoot\Process-Grep.ps1
33 | . $psScriptRoot\GZip.ps1
34 | . $psScriptRoot\Net-Tools.ps1
35 | . $psScriptRoot\Get-GeoIP.ps1
36 | . $psScriptRoot\Test-ModuleLoaded.ps1
37 |
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Uninstall-Software.ps1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | Function Uninstall-Software {
3 | <#
4 | .NOTES
5 | Copyright 2012 Robert Nees
6 | Licensed under the Apache License, Version 2.0 (the "License");
7 | http://sushihangover.blogspot.com
8 | .SYNOPSIS
9 | Uninstall software
10 | .DESCRIPTION
11 | A way to script the uninstall of multiple software packages, a great
12 | way to batch remove 'obsolete' software...
13 | .EXAMPLE
14 | C:\PS>Uninstall-Software "VMWare Tools" -Whatif
15 | .EXAMPLE
16 | C:\PS>Uninstall-Software "VMWare Tools" -Confirm
17 | .EXAMPLE
18 | C:\PS>Uninstall-Software "%" -WhatIf
19 | Get a list of all installed software...
20 | .LINK
21 | http://sushihangover.blogspot.com
22 | https://github.com/sushihangover
23 | #>
24 | [cmdletbinding(SupportsShouldProcess=$True,ConfirmImpact="High")]
25 | param (
26 | [parameter(Mandatory=$true,Position=0)][string]$Software
27 | )
28 | Begin {
29 | $likeThis = "%" + $Software + "%"
30 | $Apps = Get-WmiObject -query "SELECT * FROM Win32_Product WHERE Name LIKE '$likeThis'"
31 | }
32 | Process {
33 | Foreach($App in $Apps) {
34 | if ($pscmdlet.ShouldProcess($App.name)) {
35 | $App.Uninstall()
36 | }
37 | $App
38 | }
39 | }
40 | End {
41 | $Apps = $null
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/modules/PSRSS/En-Us/about_PSRSS_Module.help.txt:
--------------------------------------------------------------------------------
1 | TOPIC
2 | about_PSRSS_Module
3 |
4 | SHORT DESCRIPTION
5 | Describes the PSRSS module in the Windows 7 Resource Kit.
6 |
7 | LONG DESCRIPTION
8 | The PSSS module contains functions that manage and edit RSS feeds and the
9 | the articles in the feeds.
10 |
11 | The PSRSS module adds the following functions to your session when you import
12 | the module.
13 |
14 | New-Feed Subscribes to an RSS feed and downloads the articles.
15 | Remove-Feed Unsubscribes to an RSS feed and deletes the articles.
16 | Get-Feed Gets the RSS feeds on your system.
17 |
18 | Get-Article Gets articles in the RSS feeds on your system.
19 | Read-Article Marks articles as read.
20 | Remove-Article Deletes articles from your system.
21 |
22 |
23 | For information about these functions, use the Get-Help cmdlet. For example,
24 | to get detailed help for the Get-Feed function, type "get-help get-feed -detailed."
25 |
26 | The functions in the PSRSS module uses COM based on the the Microsoft.FeedsManager
27 | class in the Windows RSS platform. These functions are implemented as scripts, but
28 | are available in the session as functions.
29 |
30 |
31 | SEE ALSO
32 | about_Modules
33 | Get-Module
34 | Import-Module
35 | Remove-Module
36 |
37 | "Windows RSS Platform": http://msdn.microsoft.com/en-us/library/ms684701(VS.85).aspx
38 | "Microsoft.FeedsManager Object: http://msdn.microsoft.com/en-us/library/ms684749(VS.85).aspx
39 |
--------------------------------------------------------------------------------
/modules/IsePack/Add-PInvoke.ps1:
--------------------------------------------------------------------------------
1 | function Add-PInvoke
2 | {
3 | <#
4 | .Synopsis
5 | Creates C# code to access a C function
6 | .Description
7 | Creates C# code to access a C function
8 | .Example
9 | Add-PInvoke -Library User32.dll -Signature GetSystemMetrics(uint Metric)
10 | .Parameter Library
11 | A C Library containing code to invoke
12 | .Parameter Signature
13 | The C# signature of the external method
14 | .Parameter OutputText
15 | If Set, retuns the source code for the pinvoke method.
16 | If not, compiles the type.
17 | #>
18 | param(
19 | [Parameter(Mandatory=$true,
20 | HelpMessage="The C Library Containing the Function, i.e. User32")]
21 | [String]
22 | $Library,
23 |
24 | [Parameter(Mandatory=$true,
25 | HelpMessage="The Signature of the Method, i.e. int GetSystemMetrics(int Metric")]
26 | [String]
27 | $Signature,
28 |
29 | [Switch]
30 | $OutputText
31 | )
32 |
33 | process {
34 | if ($Library -notlike "*.dll*") {
35 | $Library+=".dll"
36 | }
37 | if ($signature -notlike "*;") {
38 | $Signature+=";"
39 | }
40 | if ($signature -notlike "public static extern*") {
41 | $signature = "public static extern $signature"
42 | }
43 |
44 | $MemberDefinition = "[DllImport(`"$Library`")]
45 | $Signature"
46 |
47 | if (-not $OutputText) {
48 | Add-Type -PassThru -Name "PInvoke$(Get-Random)" `
49 | -MemberDefinition $MemberDefinition
50 | } else {
51 | $MemberDefinition
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/modules/FileSystem/en-us/about_FileSystem_Module.help.txt:
--------------------------------------------------------------------------------
1 | TOPIC
2 | about_FileSystem_Module
3 |
4 | SHORT DESCRIPTION
5 | Describes the FileSystem module in the Windows 7 Resource Kit.
6 |
7 | LONG DESCRIPTION
8 | The FileSystem module contains functions that work on the file system
9 | drives in Windows PowerShell.
10 |
11 | The following functions are added to your session when you import
12 | the FileSystem module
13 |
14 | Copy-ToZip Compresses files and adds them to a ZIP file.
15 | Get-DuplicateFile Finds files that have identical file contents.
16 | Get-FreeDiskSpace Gets the free disk space on logical drives
17 | of the local computer or a remote computer.
18 |
19 | Get-SHA1 Computes the SHA1 hash of the specified file.
20 | Mount-SpecialFolder Creates PSDrives for special folders in the system.
21 | New-Zip Creates a new zip archive.
22 | Rename-Drive Renames a file system drive.
23 |
24 | For information about these functions, use the Get-Help cmdlet. For example,
25 | to get detailed help for the Copy-ToZip function, type "get-help copy-tozip -detailed."
26 |
27 |
28 | NOTE: The Mount-SpecialFolder is run automatically in your session when
29 | you import the FileSystem module. As a result, the session includes
30 | a Windows PowerShell drive (PSDrive) for each special folder in the
31 | system.
32 |
33 | These functions are implemented as scripts, but are available in the
34 | session as functions.
35 |
36 |
37 | SEE ALSO
38 | about_Modules
39 | Get-Module
40 | Import-Module
41 | Remove-Module
42 |
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Sleep-Computer.ps1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | Function Sleep-Computer {
3 | <#
4 | .NOTES
5 | Copyright 2013 Robert Nees
6 | Licensed under the Apache License, Version 2.0 (the "License");
7 | http://sushihangover.blogspot.com
8 | .SYNOPSIS
9 | Place your computer into Sleep mode
10 | .DESCRIPTION
11 | Since there is not a cmdlet that will 'sleep' your computer, the Sleep-Computer function was born. You can use
12 | the force option to override/clear your hibernate setting and then sleep if you need to...
13 | .EXAMPLE
14 | c:\PS>Sleep-Computer -WhatIf
15 | What if: Performing operation "Sleep-Computer" on Target "SushiHangover-MacBookPro".
16 | .EXAMPLE
17 | c:\PS>Sleep-Computer -Confirm -Force
18 |
19 | Confirm
20 | Are you sure you want to perform this action?
21 | Performing operation "Sleep-Computer" on Target "V-RONEES-W8MBP".
22 | [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):
23 | .LINK
24 | http://sushihangover.blogspot.com
25 | .LINK
26 | https://github.com/sushihangover
27 | #>
28 | [cmdletbinding(SupportsShouldProcess=$True,ConfirmImpact="Low")]
29 | param (
30 | [parameter(mandatory=$false)][switch]$Force
31 | )
32 | if ($pscmdlet.ShouldProcess($env:COMPUTERNAME)) {
33 | if ($Force.IsPresent) {
34 | if ($pscmdlet.ShouldProcess("Turning off hibernation")) {
35 | & powercfg -hibernate off
36 | }
37 | }
38 | $rundll = Join-Path -Path ($env:windir) -ChildPath "System32\rundll32.exe"
39 | & ($rundll) powrprof.dll,SetSuspendState 0,1,0
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/modules/PSSystemTools/en-us/about_System_Module.help.txt:
--------------------------------------------------------------------------------
1 | TOPIC
2 | about_System_Module
3 |
4 | SHORT DESCRIPTION
5 | Describes the System module in the Windows 7 Resource Kit.
6 |
7 | LONG DESCRIPTION
8 | The System module contains functions that get information about the operating
9 | system on the local and remote computers.
10 |
11 | The System module adds the following functions to your session when you import
12 | the module.
13 |
14 | Get-BootStatus Gets information about how the system was started, e.g. Safe Mode
15 | Get-DisplaySetting Gets the width and height of the primary monitor.
16 | Get-LogicalDiskInventory Gets the logical disks on the local and remote computers.
17 | Get-MultiTouchMaximum Gets the number of fingers that can be used on a multitouch device.
18 | Get-OSVersion Gets the operating system Version of a local or remote computer.
19 | Get-Processor Gets processor information for local and remote computers.
20 | Get-WindowsEdition Gets the operating system edition.
21 | Test-32Bit Returns TRUE when the computer has a 32-bit processor architecture.
22 | Test-64Bit Returns TRUE when the computer has a 64-bit processor architecture.
23 |
24 |
25 | For information about these functions, use the Get-Help cmdlet. For example,
26 | to get detailed help for the Get-Feed function, type "get-help get-bootstatus -detailed."
27 |
28 | These functions are implemented in the module as scripts, but are available in the session
29 | as functions.
30 |
31 |
32 | SEE ALSO
33 | about_Modules
34 | Get-Module
35 | Import-Module
36 | Remove-Module
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Dismount-RemovableMedia.ps1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | Function Dismount-RemovableMedia {
3 | <#
4 | .NOTES
5 | Copyright 2012/2013 Robert Nees
6 | Licensed under the Apache License, Version 2.0 (the "License");
7 | http://sushihangover.blogspot.com
8 | .SYNOPSIS
9 | Eject Removable Media
10 | .DESCRIPTION
11 | This scripts provides a way to script the eject a removable media drive
12 | .EXAMPLE
13 | C:\PS>Do-Eject.ps1 E: -Confirm
14 | Confirm
15 | Are you sure you want to perform this action?
16 | Performing operation "Dismount-RemovableMedia" on Target "a:".
17 | [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):
18 | .EXAMPLE
19 | >Dismount-RemovableMedia a: -whatif
20 | What if: Performing operation "Dismount-RemovableMedia" on Target "a:".
21 | .EXAMPLE
22 | >Get-RemovableMedia |foreach {if ($_.DeviceID -eq 'e:') {$_ |dismount-removablemedia -whatif}}
23 | What if: Performing operation "Dismount-RemovableMedia" on Target "E:".
24 | .LINK
25 | http://sushihangover.blogspot.com
26 | https://github.com/sushihangover
27 | #>
28 | [cmdletbinding(SupportsShouldProcess=$True,ConfirmImpact="Low")]
29 | Param (
30 | [parameter(mandatory=$true,ValueFromPipeline=$true,ValueFromPipelineByPropertyName=$true)][Alias("Drive")][string]$DeviceID
31 | )
32 | Begin {
33 | $ShellApplication = New-Object -comObject Shell.Application
34 | }
35 | Process {
36 | if ($pscmdlet.ShouldProcess($DeviceID)) {
37 | $ShellApplication.Namespace(17).ParseName("$DeviceID").InvokeVerb("Eject")
38 | }
39 | }
40 | End {
41 | $ShellApplication = $null
42 | Remove-ComObjectsFromMemory
43 | }
44 | }
--------------------------------------------------------------------------------
/modules/SushiHangover-RSACrypto/UnitTest-RSACrypto.ps1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | <#
3 | .NOTES
4 | Copyright 2013 Robert Nees
5 | Licensed under the Apache License, Version 2.0 (the "License");
6 | http://sushihangover.blogspot.com
7 | .SYNOPSIS
8 | Test the SushiHangover-RSACrypto module
9 | .DESCRIPTION
10 | This is a collection of functions to test the SushiHangover-RSACrypto module
11 |
12 | It is not much of a unit test, but more like an example.
13 |
14 | If the Compare-Object output is different than the module is 'broken', please report
15 | any problems via SushiHangover on GitHub and/or http://sushihangover.blogspot.com
16 | .EXAMPLE
17 | UnitTest-RSACrypto.ps1
18 | .LINK
19 | http://sushihangover.blogspot.com
20 | #>
21 | Import-Module SushiHangover-RSACrypto
22 | $PemFile = $HOME + '\.ssh\SSH2RSA2048_private_test_key.pem'
23 | . Set-RSACryptoServiceProvider $PemFile
24 | $preclearText = "Hello, Lets keep this a secret, OK?"
25 | Write-Host 'Clear Text of:'
26 | Write-Host '--------------'
27 | Write-Host $preclearText -ForegroundColor Green
28 | Write-Host
29 | $preclearBytes = Convert-StringToByte $preclearText
30 | $clearBase64 = ConvertTo-Base64String $preclearBytes
31 | $cypherBytes = Get-RSAEncryptedBytes $clearBase64 $false
32 | $cypherBase64 = ConvertTo-Base64String $cypherBytes
33 | Write-Host 'Encrypted Base64 String:'
34 | Write-Host '------------------------'
35 | Write-Host $cypherBase64 -ForegroundColor Red
36 | Write-Host
37 | Write-Host 'Compare-Object output using input bytes via Get-RSAClearBytes:'
38 | $postclearBytes = Get-RSAClearBytes $cypherBase64 $false
39 | Compare-Object $preclearBytes $postclearBytes -CaseSensitive -IncludeEqual |Format-Table -AutoSize
40 | Write-Host 'Compare-Object output using clear text input via Get-RSAClearText:'
41 | $postclearText = Get-RSAClearText $cypherBase64 $false
42 | Write-Host
43 | Compare-Object $preclearText $postclearText -CaseSensitive -IncludeEqual
44 | Remove-Module SushiHangover-RSACrypto
45 |
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Get-InstalledSoftware.ps1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | Function Get-InstalledSoftware {
3 | <#
4 | .NOTES
5 | Copyright 2012/2013 Robert Nees
6 | Licensed under the Apache License, Version 2.0 (the "License");
7 | http://sushihangover.blogspot.com
8 | .SYNOPSIS
9 | Get the software installed
10 | .DESCRIPTION
11 | A way to script the collection of software that has been installed on
12 | an Windows OS. Great for quick auditing, support desks, compliance checking, etc...
13 |
14 | The output is 'pipe-able' and in the object structure:
15 |
16 | IdentifyingNumber : {44D55920-B223-4702-81D9-4C07108A3C27}
17 | Name : VMware Tools
18 | Vendor : VMware, Inc.
19 | Version : 9.2.2.18018
20 | Caption : VMware Tools
21 | .EXAMPLE
22 | [11] » Get-InstalledSoftware
23 |
24 | IdentifyingNumber : {44D55920-B223-4702-81D9-4C07108A3C27}
25 | Name : VMware Tools
26 | Vendor : VMware, Inc.
27 | Version : 9.2.2.18018
28 | Caption : VMware Tools
29 |
30 | IdentifyingNumber : {5FCE6D76-F5DC-37AB-B2B8-22AB8CEDB1D4}
31 | Name : Microsoft Visual C++ 2008 Redistributable - x64 9.0.30729.6161
32 | Vendor : Microsoft Corporation
33 | Version : 9.0.30729.6161
34 | Caption : Microsoft Visual C++ 2008 Redistributable - x64 9.0.30729.6161
35 | .LINK
36 | http://sushihangover.blogspot.com
37 | .LINK
38 | https://github.com/sushihangover
39 | #>
40 | [cmdletbinding(SupportsShouldProcess=$True)]
41 | param (
42 | # [parameter(Mandatory=$true,Position=0)][string]$Software
43 | )
44 | Begin {
45 | $Apps = Get-WmiObject -query "SELECT * FROM Win32_Product"
46 | }
47 | Process {
48 | Foreach($App in $apps) {
49 | $App
50 | }
51 | }
52 | End {
53 | $App = $null
54 | }
55 | }
56 |
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Clear-IECache.ps1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | Function Clear-IECache {
3 | <#
4 | .NOTES
5 | Copyright 2012/2013 Robert Nees
6 | Licensed under the Apache License, Version 2.0 (the "License");
7 | http://sushihangover.blogspot.com
8 | .SYNOPSIS
9 | Clear Internet Explorer's cache
10 | .DESCRIPTION
11 | This function wraps a custom C# based function that clears the IE cache, this has been tested on Internet Explorer 8, 9, & 10.
12 | Clearing the cache, depending upon how many items are in it, can take some time. There currently are no call back
13 | events, thus I am not displaying a PowerShell Progress bar, but if someone asks, I can add that to the C# code.
14 |
15 | Note: You can not unload the ClearIECache assembly once loaded, this is a .NET behavior. Assemblies loaded into an AppDomain cannot be unloaded,
16 | and only the AppDomain can be unloaded, and PowerShell uses a single appdomain. You can work around this if required by loading this function into a
17 | separate process, calling it and then drop that other process, but for something this small I do not see the current need. Comments welcome.
18 | .EXAMPLE
19 | c:\PS>Clear-IECache
20 | .LINK
21 | http://sushihangover.blogspot.com
22 | .LINK
23 | https://github.com/sushihangover
24 | #>
25 | Param (
26 | )
27 | $CSFile = Join-Path -Path $PSScriptRoot -ChildPath 'ClearIECache.cs’
28 | $SourceCode = [System.IO.File]::ReadAllText($CSFile)
29 | $Assemblies = ('System') #,'System.Collections.Generic','System.Ling','System.Text','System.Runtime.InteropServices')
30 |
31 | try {
32 | Add-Type -TypeDefinition $SourceCode -ReferencedAssemblies $Assemblies -IgnoreWarnings -Language CSharp
33 | } catch {
34 | Write-Warning "An error occurred attempting to add the .NET Framework class to the PowerShell session."
35 | Write-Warning "The error was: $($Error[0].Exception.Message)"
36 | }
37 |
38 | $ieCache = New-Object SushiHangover.ClearIECache
39 | $ieCache.Clear()
40 | $ieCache = $null
41 | }
42 |
43 |
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Disable-WindowsSearch.ps1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | Function Disable-WindowsSearch {
3 | <#
4 | .NOTES
5 | Copyright 2012/2013 Robert Nees
6 | Licensed under the Apache License, Version 2.0 (the "License");
7 | http://sushihangover.blogspot.com
8 | .SYNOPSIS
9 | Stop and Set the Windows Search Indexer to disabled
10 | .DESCRIPTION
11 | Call me lazy, I get tried of typing the cmds to stop and disable the
12 | WSearch Service on the Windows 8 machines I touch.... I use them as jumpboxes
13 | to AWS, Azure, VPN based datacenters and the pauses during the indexing of scripts, transcripts,
14 | drives me insane...
15 | .EXAMPLE
16 | C:\PS>Disable-WindowsSearch -Confirm
17 |
18 | Confirm
19 | Are you sure you want to perform this action?
20 | Performing operation "Disable-WindowsSearch" on Target "System.ServiceProcess.ServiceController".
21 | [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
22 |
23 | Confirm
24 | Are you sure you want to perform this action?
25 | Performing operation "Stop-Service" on Target "Windows Search (WSearch)".
26 | [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
27 | WARNING: Waiting for service 'Windows Search (WSearch)' to stop...
28 | WARNING: Waiting for service 'Windows Search (WSearch)' to stop...
29 | WARNING: Waiting for service 'Windows Search (WSearch)' to stop...
30 |
31 | Confirm
32 | Are you sure you want to perform this action?
33 | Performing operation "Set-Service" on Target "Windows Search (WSearch)".
34 | [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
35 | .LINK
36 | http://sushihangover.blogspot.com
37 | .LINK
38 | https://github.com/sushihangover
39 | #>
40 | [cmdletbinding(SupportsShouldProcess=$True,ConfirmImpact="Low")]
41 | Param (
42 | [parameter(Mandatory=$false)][switch]$Enable
43 | )
44 | Begin {
45 | }
46 | Process {
47 | $Service = Get-Service -Name 'WSearch'
48 | if ($pscmdlet.ShouldProcess($Service)) {
49 | if (!($Enable.IsPresent)) {
50 | if ($Service.Status -eq 'Running') {
51 | $Service | Stop-Service -Force
52 | }
53 | $Service | Set-Service -StartupType Disable
54 | } else {
55 | $Service | Set-Service -StartupType Automatic
56 | $Service | Start-Service
57 | }
58 | }
59 | }
60 | End {
61 | }
62 | }
--------------------------------------------------------------------------------
/modules/Setup/PowerShellPack.wixproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | en-us
6 | false
7 | PowerShellPack
8 | package
9 | true
10 | bin\$(Configuration)\
11 | false
12 | false
13 |
14 |
15 | 1.0.0
16 | Microsoft Corporation
17 |
18 |
19 | Manufacturer=$(Manufacturer);
20 | ProductName=$(ProjectName);
21 | ProductVersion=$(ProductVersion);
22 |
23 |
24 |
25 | Debug
26 | true
27 | true
28 | false
29 |
30 |
31 | false
32 | true
33 |
34 |
35 |
36 |
40 |
47 |
48 |
49 |
50 |
51 |
52 |
53 | C:\Program Files\Windows Installer XML v3\bin\WixUIExtension.dll
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
--------------------------------------------------------------------------------
/modules/PSImageTools/En-US/about_PSImageTools_Module.help.txt:
--------------------------------------------------------------------------------
1 | TOPIC
2 | about_PSImageTools_Module
3 |
4 | SHORT DESCRIPTION
5 | Describes the PSImageTools module in the Windows 7 Resource Kit.
6 |
7 | LONG DESCRIPTION
8 | The PSImageTools module contains functions that manage and edit image files, such
9 | as photographs, in Windows PowerShell.
10 |
11 | The PSImageTools module adds the following basic functions to your session
12 | when you import the module.
13 |
14 |
15 | Get-Image Gets image objects with many useful properties. Provides
16 | methods to load, save, crop, resize, rotate, and flip images.
17 |
18 | Get-ImageProperty Gets extended properties for the image, such as shutter speed
19 | and resolution.
20 |
21 | Copy-ImageIntoOrganizedFolder
22 | Creates a set of folders based on properties that you specify
23 | and copies image files into the folders based on their
24 | property values.
25 |
26 | ConvertTo-Bitmap Converts images to bitmap format (.bmp).
27 | ConvertTo-Jpeg Converts images to JPEG format (.jpg, .jpeg).
28 |
29 |
30 | The PSImageTools module also adds filtering functions to your session. You can use these
31 | more advanced functions to edit images when the basic functions do not provide a feature
32 | that you need.
33 |
34 | The Add-*Filter functions create a Windows Image Acquisition filter that represents a change to one or
35 | more images. The filters alone do not change images. To apply a filter to an image, use
36 | the Set-ImageFilter function.
37 |
38 | Add-CropFilter Creates a filter that crops images.
39 | Add-OverlayFilter Creates a filter that overlays one image on another.
40 | Add-RotateFlipFilter Creates a filter that rotate and flips images.
41 | Add-ScaleFilter Creates a filter that resizes images.
42 |
43 | Set-ImageFilter Edits an image by applying a filter.
44 |
45 | For information about these functions, use the Get-Help cmdlet. For example,
46 | to get detailed help for the Get-Image function, type "get-help get-image -detailed."
47 |
48 | These functions are implemented as scripts, but are available in the
49 | session as functions.
50 |
51 |
52 | SEE ALSO
53 | about_Modules
54 | Get-Module
55 | Import-Module
56 | Remove-Module
57 |
58 | "Image Manipulation in PowerShell" (Windows PowerShell Team Blog)
59 | http://blogs.msdn.com/powershell/archive/2009/03/31/image-manipulation-in-powershell.aspx
60 |
61 | "ImageProcess object" in MSDN
62 | http://msdn.microsoft.com/en-us/library/ms630507(VS.85).aspx
63 |
64 | "How to Use Filters" in MSDN
65 | http://msdn.microsoft.com/en-us/library/ms630819(VS.85).aspx
--------------------------------------------------------------------------------
/modules/Setup/PowerShellPack.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/modules/SushiHangover-Transcripts/SushiHangover-Transcripts.psm1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | <#
3 | .NOTES
4 | Copyright 2012,2013 Robert Nees
5 | Licensed under the Apache License, Version 2.0 (the "License");
6 | http://sushihangover.blogspot.com
7 | .SYNOPSIS
8 | Transcript Helpers
9 | .DESCRIPTION
10 | Helper function to start, stop, pause, resume and parse transcripts (records all or part of a Windows PowerShell session in a text file)
11 | .EXAMPLE
12 | .LINK
13 | http://sushihangover.blogspot.com
14 | #>
15 |
16 | Function Resume-Transcript {
17 | Start-Transcript -Append -Force -Path ($SH:TranscriptName)
18 | }
19 |
20 | Function Suspend-Transcript {
21 | Stop-Transcript
22 | }
23 |
24 | Function Show-Transcript {
25 | Invoke-Expression ($Global:SH:TranscriptName)
26 | }
27 |
28 | Function Initialize-TranscriptLocation {
29 | Register-EngineEvent PowerShell.Exiting { Stop-Transcript } | Out-Null
30 | $Transcript = Join-Path -Path ([environment]::GetFolderPath("MyDocuments")) -ChildPath "WindowsPowerShell"
31 | $Transcript = Join-Path -Path ($Transcript) -ChildPath ("Transcripts")
32 | if (!(Test-Path -Path $Transcript)) {
33 | New-item -Path $Transcript -ItemType Directory
34 | }
35 | Set-Variable -Name SH:TranscriptDir -Value $Transcript -Option Constant -Scope Global # This will be at the global scope level
36 | $Transcript = Join-Path -Path ($Transcript) -ChildPath ("Transcript-" + (Get-Date -uFormat "%Y-%m-%d-%H%M-PID") + $pid.ToString() + ".log")
37 | Set-Variable -Name SH:TranscriptName -Value $Transcript -Option Constant -Scope Global # This will be at the global scope level
38 | }
39 |
40 | Function Initialize-Transcript {
41 | Register-EngineEvent PowerShell.Exiting { Stop-Transcript } | Out-Null
42 | Start-Transcript -NoClobber -Force -Path $Global:SH:TranscriptName | Out-Null
43 | }
44 |
45 | #Function Find-Transcript {
46 | # [cmdletBinding()]
47 | # Param (
48 | # [Parameter(Mandatory=$False)][Alias("filter")][string]$filterString,
49 | # [Parameter(Mandatory=$False)][Alias("i")][switch]$ignore_case,
50 | # [Parameter(Mandatory=$False)][Alias("v")][switch]$invert_match,
51 | # [Parameter(Mandatory=$False)][Alias("test")][switch]$debugOutput,
52 | # [Parameter(Mandatory=$False)][Alias("H")][switch]$with_filename,
53 | # [Parameter(Mandatory=$False)][Alias("ver")][switch]$version,
54 | # [Parameter(Mandatory=$False,ValueFromPipeline=$True)][string]$Path = ''
55 | # )
56 | # Begin {
57 | # Suspend-Transcript | Out-Null
58 | # $args
59 | # }
60 | # Process {
61 | # if ($Path.Length -gt 0) {
62 | # cat $Path | Do-Grep @psBoundParameters
63 | # } else {
64 | # cat $TranscriptName|Do-Grep @psBoundParameters
65 | # }
66 | # }
67 | # End {
68 | # Restart-Transcript | Out-Null
69 | # }
70 | #}
71 | #Set-Alias -Name grep-log -Value Find-Transcript
72 |
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/foobar/Do-IPAddress.ps1:
--------------------------------------------------------------------------------
1 | <#
2 | .NOTES
3 | Copyright 2012 Robert Nees
4 | Licensed under the Apache License, Version 2.0 (the "License");
5 | http://sushihangover.blogspot.com
6 |
7 | .SYNOPSIS
8 | Set static ip entries or dhcp addressing on a network interface
9 | .DESCRIPTION
10 | This script sets a network interface to either have dhcp or static ip addressing
11 |
12 | .EXAMPLE
13 |
14 | .LINK
15 | http://sushihangover.blogspot.com
16 | #>
17 | param(
18 | [parameter(
19 | parametersetname="Static",
20 | mandatory=$true,
21 | position=1)]
22 | [parameter(
23 | parametersetname="Dhcp",
24 | mandatory=$true,
25 | position=1)]
26 | [string]$NICName,
27 | [parameter(
28 | parametersetname="Dhcp",
29 | mandatory=$false,
30 | position=2)]
31 | [string]$reset = $false,
32 | [parameter(
33 | parametersetname="Static",
34 | mandatory=$true,
35 | position=2)]
36 | [string]$ip = '',
37 | [parameter(
38 | parametersetname="Static",
39 | mandatory=$true,
40 | position=3)]
41 | [string]$gateway,
42 | [parameter(
43 | parametersetname="Static",
44 | mandatory=$false,
45 | position=4)]
46 | [string]$mask = "255.255.255.0",
47 | [parameter(
48 | parametersetname="Static",
49 | mandatory=$false,
50 | position=5)]
51 | [string]$dns1 = "8.8.8.8",
52 | [parameter(
53 | parametersetname="Static",
54 | mandatory=$false,
55 | position=6)]
56 | [string]$dns2 = "8.8.4.4",
57 | [parameter(
58 | parametersetname="Static",
59 | mandatory=$false,
60 | position=7)]
61 | [string]$registerDns = "FALSE"
62 | )
63 | $dns = $dns1
64 | if($dns2) {
65 | $dns ="$dns1,$dns2"
66 | }
67 | $NIC = (gwmi Win32_NetworkAdapter | where {$_.netconnectionid -eq $NICName})
68 | if ($NIC.InterfaceIndex -gt 0) {
69 | $NetInterface = Get-WmiObject Win32_NetworkAdapterConfiguration | where {$_.InterfaceIndex -eq $NIC.InterfaceIndex}
70 | if ($NetInterface) {
71 | switch ($PsCmdlet.ParameterSetName) {
72 | "Static" {
73 | [void]$NetInterface.EnableStatic($ip, $subnetmask)
74 | [void]$NetInterface.SetGateways($gateway)
75 | [void]$NetInterface.SetDNSServerSearchOrder($dns)
76 | [void]$NetInterface.SetDynamicDNSRegistration($registerDns)
77 | [void]$NIC.Disable()
78 | [void]$NIC.Enable()
79 | }
80 | "Dhcp" {
81 | $NetInterface.EnableDHCP()
82 | if ($reset) {
83 | $NIC.Disable()
84 | $NIC.Enable()
85 | write-host $NIC.netconnectionid "was reset"
86 | }
87 | }
88 | }
89 | }
90 | } else {
91 | write-host "Network Adapter not found : " $NICName
92 | }
93 |
94 |
95 |
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Get-WindowsLicenseStatus.ps1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | function Get-WindowsLicenseStatus{
3 | <#
4 | .NOTES
5 | Copyright 2013 Robert Nees
6 | Licensed under the Apache License, Version 2.0 (the "License");
7 | http://sushihangover.blogspot.com
8 | .SYNOPSIS
9 | Get-WindowsLicensingStatus -- Check the License Status of Windows...
10 | .DESCRIPTION
11 | The original script is from 'The Scripting Guys' and I changed it to allow
12 | local Windows 8 machines to be checked while still supporting VMs if this is run all
13 | a Hyper-V Host
14 |
15 | http://blogs.technet.com/b/heyscriptingguy/archive/2012/08/21/use-powershell-to-check-the-license-status-of-windows-8.aspx
16 | .EXAMPLE
17 | PS C:\> Get-WindowsLicenseStatus.ps1
18 | This example trys to the license status of all the VMs running on this host, if the VMMS service is not
19 | running you wil get the license status of the localhost
20 | .EXAMPLE
21 | PS C:\> Get-WindowsLicenseStatus.ps1 -LocalHost
22 | This example returns the license status of the localhost
23 | .LINK
24 | http://sushihangover.blogspot.com
25 | #>
26 | Param (
27 | [Parameter(Mandatory=$false)][alias('l')][Switch]$LocalHostOnly
28 | )
29 | Try {
30 | if ($LocalHostOnly.IsPresent) {
31 | $cim = New-CimSession
32 | } else {
33 | $vm = get-vm -ErrorAction SilentlyContinue
34 | if ($vm -ne $null) {
35 | $cim = New-CimSession -ComputerName $vm.name # -ErrorAction SilentlyContinue
36 | } else {
37 | Throw "VMMSProblem" # The Virtual Machine Management Service is not running
38 | }
39 | }
40 | } Catch {
41 | if ($_.Exception.ToString() = "VMMSProblem") {
42 | $cim = New-CimSession # just grab the localhost instead
43 | Write-Output "Virtual Machine Host problem, showing LocalHost only:"
44 | } else {
45 | throw "Could not create a new CIM Session"
46 | exit
47 | }
48 | }
49 | if ($cim -ne $null) {
50 | get-ciminstance -class SoftwareLicensingProduct -CimSession $cim |
51 | where {$_.name -match 'windows' -AND $_.licensefamily} |
52 | format-list -property Name, Description, `
53 | @{Label ="Grace period (days)"; Expression = { $_.graceperiodremaining / 1440}}, `
54 | @{Label = "License Status"; Expression = {
55 | switch (foreach {$_.LicenseStatus}) {
56 | 0 {"Unlicensed"} `
57 | 1 {"Licensed"} `
58 | 2 {"Out-Of-Box Grace Period"} `
59 | 3 {"Out-Of-Tolerance Grace Period"} `
60 | 4 {"Non-Genuine Grace Period"} `
61 | }
62 | } }
63 | }
64 | }
65 |
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Do-FileEncoding.ps1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | function Get-FileEncoding {
3 | <#
4 | .NOTES
5 | Copyright 2012,2013 Robert Nees
6 | Licensed under the Apache License, Version 2.0 (the "License");
7 | http://sushihangover.blogspot.com
8 | ! Grap the original that this is based upon from http://poshcode.org/2059
9 | .SYNOPSIS
10 | Gets file encoding.
11 | .DESCRIPTION
12 | The Get-FileEncoding function determines encoding by looking at Byte Order Mark (BOM).
13 | Based on port of C# code from http://www.west-wind.com/Weblog/posts/197245.aspx
14 | .EXAMPLE
15 | Get-ChildItem *.ps1 | select FullName, @{n='Encoding';e={Get-FileEncoding $_.FullName}} | where {$_.Encoding -ne 'ASCII'}
16 | This command gets ps1 files in current directory where encoding is not ASCII
17 | .EXAMPLE
18 | Get-ChildItem *.ps1 | select FullName, @{n='Encoding';e={Get-FileEncoding $_.FullName}} | where {$_.Encoding -ne 'ASCII'} | foreach {(get-content $_.FullName) | set-content $_.FullName -Encoding ASCII}
19 | Same as previous example but fixes encoding using set-content
20 | .LINK
21 | http://sushihangover.blogspot.com
22 | .LINK
23 |
24 | #>
25 | [CmdletBinding()]
26 | Param (
27 | [Parameter(Mandatory=$True, ValueFromPipeline=$True)][string]$Path
28 | )
29 | Begin {
30 | }
31 | Process {
32 | [byte[]]$byte = get-content -Encoding byte -ReadCount 4 -TotalCount 4 -Path $Path
33 | if ($byte -ne $null) {
34 | if ($byte.Count -ge 4) {
35 | if ( $byte[0] -eq 0xef -and $byte[1] -eq 0xbb -and $byte[2] -eq 0xbf ) {
36 | Write-Output 'UTF8'
37 | } elseif ($byte[0] -eq 0xfe -and $byte[1] -eq 0xff) {
38 | Write-Output 'Unicode'
39 | } elseif ($byte[0] -eq 0 -and $byte[1] -eq 0 -and $byte[2] -eq 0xfe -and $byte[3] -eq 0xff) {
40 | Write-Output 'UTF32'
41 | } elseif ($byte[0] -eq 0x2b -and $byte[1] -eq 0x2f -and $byte[2] -eq 0x76) {
42 | Write-Output 'UTF7'
43 | } else {
44 | Write-Output 'ASCII'
45 | }
46 | } else {
47 | Write-Error -Message ($Path + " is only " + $byte.Count + " bytes in size, unable to determine file encoding") -Category InvalidData
48 | }
49 | } else {
50 | Write-Error -Message ($Path + " is zero byte(s) in size") -Category InvalidData
51 | }
52 | }
53 | End {
54 | }
55 | }
56 |
57 | Function Set-FileEncoding {
58 | <#
59 | .NOTES
60 | Copyright 2012,2013 Robert Nees
61 | Licensed under the Apache License, Version 2.0 (the "License");
62 | http://sushihangover.blogspot.com
63 | .SYNOPSIS
64 | Sets/Changes file encoding.
65 | .DESCRIPTION
66 | The Set-FileEncoding function changes the file's encoding in place by using Set-Content
67 | with the default encoding being 'Ascii'
68 | EncodingTypes available are Unicode, Byte, BigEndianUnicode, UTF8, UTF7, Ascii
69 | .EXAMPLE
70 | Set-FileEncoding clear-trash.ps1 -whatif
71 | What if: Performing operation "Set Content" on Target "Path: C:\Users\xavier\Documents\WindowsPowerShell\clear-trash.ps1".
72 | #>
73 | [CmdletBinding()]
74 | Param (
75 | [Parameter(Mandatory=$True,ValueFromPipelineByPropertyName=$True)][string]$Path,
76 | [Parameter(Mandatory=$False,ValueFromPipelineByPropertyName=$True)][string]$EncodingType = "Ascii",
77 | [Parameter(Mandatory=$False)][switch]$WhatIf
78 | )
79 | if ((Get-FileEncoding $Path) -ne $EncodingType) {
80 | # Need to 'buffer' content as piping get and set will fail with file in use error...
81 | $FileContent = Get-Content $Path
82 | If ($WhatIf) {
83 | $FileContent | Set-Content $Path -WhatIf -Force -Encoding $EncodingType
84 | } else {
85 | $FileContent | Set-Content $Path -Force -Encoding $EncodingType
86 | }
87 | } else {
88 | If ($WhatIf) {
89 | "File encoding is the same, no file change will occur"
90 | }
91 | }
92 | }
93 |
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Test-ModuleLoaded.ps1:
--------------------------------------------------------------------------------
1 | Function Test-AssemblyLoaded {
2 | <#
3 | .NOTES
4 | Copyright 2013 Robert Nees
5 | Licensed under the Apache License, Version 2.0 (the "License");
6 | .SYNOPSIS
7 | Test if an Assembly is loaded, pipeline'd AssemblyName input and pipeline'd boolean output
8 | .DESCRIPTION
9 | A helper to test and optionally load, an Assembly with input and output pipeline processing, supporting
10 | -WhatIf on the Assembly test and Verbose output if needed.
11 | .EXAMPLE
12 | Test-AssemblyLoaded -AssemblyName SushiHangover.GeoIP.LookupService -Verbose
13 | VERBOSE: Performing operation "Test-AssemblyLoaded" on Target "SushiHangover.GeoIP.LookupService".
14 | VERBOSE: SushiHangover.GeoIP.LookupService is available
15 | True
16 | .EXAMPLE
17 | C:\PS>"SushiHangover-BuildANewGirlFriend" | Test-AssemblyLoaded -Verbose
18 | VERBOSE: Performing operation "Test-AssemblyLoaded" on Target "SushiHangover-BuildANewGirlFriend".
19 | VERBOSE: SushiHangover-BuildANewGirlFriend is not available
20 | False
21 | #>
22 | [cmdletbinding(SupportsShouldProcess=$True,ConfirmImpact="Low")]
23 | Param (
24 | [Parameter(Mandatory=$true,ValueFromPipeline=$true,ValueFromPipelineByPropertyName=$true)][String]$AssemblyName
25 | )
26 | Begin {}
27 | Process {
28 | [boolean]$Loaded = $false
29 | Try {
30 | if ($pscmdlet.ShouldProcess($AssemblyName)) {
31 | [reflection.assembly]::GetAssembly([type]$AssemblyName) | Out-Null
32 | Write-Verbose ($AssemblyName + " is available")
33 | $Loaded = $true
34 | }
35 | } Catch {
36 | # Do nothing but supressed error as $Loaded is set to $false by default
37 | Write-Verbose ($AssemblyName + " is not available")
38 | }
39 | $Loaded
40 | }
41 | End {}
42 | }
43 | Function Test-ModuleImported {
44 | <#
45 | .NOTES
46 | Copyright 2013 Robert Nees
47 | Licensed under the Apache License, Version 2.0 (the "License");
48 | .SYNOPSIS
49 | Test if a Module is loaded, pipeline'd ModuleName input and pipeline'd boolean output
50 | .DESCRIPTION
51 | A helper to test and optionally load, a Module with input and output pipeline processing, supporting
52 | -WhatIf on the Module load and Verbose output if needed.
53 | .EXAMPLE
54 | c:\PS>[boolean]$Loaded = "SushiHangover-Tools" | Test-ModuleImported -Verbose
55 | VERBOSE: SushiHangover-Tools is not loaded
56 | .EXAMPLE
57 | c:\PS>"SushiHangover-Tools" | Test-ModuleImported -AutoLoad -WhatIf
58 | What if: Performing operation "Test-ModuleImported" on Target "SushiHangover-Tools".
59 | False
60 | .EXAMPLE
61 | C:\PS>"SushiHangover-Tools" | Test-ModuleImported -Verbose
62 | VERBOSE: SushiHangover-Tools is loaded
63 | True
64 | #>
65 | [cmdletbinding(SupportsShouldProcess=$True,ConfirmImpact="Low")]
66 | Param (
67 | [Parameter(Mandatory=$true,ValueFromPipeline=$true,ValueFromPipelineByPropertyName=$true)][String]$ModuleName,
68 | [Parameter(Mandatory=$false,ValueFromPipeline=$false,ValueFromPipelineByPropertyName=$true)][switch]$AutoLoad
69 | )
70 | Begin {}
71 | Process {
72 | [boolean]$Imported = $false
73 | if ((Get-Module -Name $ModuleName) -ne $null) {
74 | Write-Verbose ($ModuleName + " is loaded")
75 | $Imported = $True
76 | } else {
77 | Write-Verbose ($ModuleName + " is not loaded")
78 | if ($AutoLoad.IsPresent) {
79 | if((Get-Module -ListAvailable -verbose:$false | Where-Object { $_.name -like $ModuleName }) -ne $null) {
80 | if ($pscmdlet.ShouldProcess($ModuleName)) {
81 | Import-Module -Name $ModuleName | Out-Null
82 | $Imported = $true
83 | }
84 | } else {
85 | Write-Verbose ($ModuleName + " is not available")
86 | }
87 | }
88 | if ($PSBoundParameters['Verbose']) {
89 | if ((Get-Module -ListAvailable -verbose:$false | Where-Object { $_.Name -eq $ModuleName }) -eq $null) {
90 | Write-Verbose ($ModuleName + " is not available")
91 | }
92 | }
93 | }
94 | $Imported
95 | }
96 | End {}
97 | }
98 |
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Process-RawPipe.ps1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | Function Pipe-Raw
3 | {
4 | <#
5 | .NOTES
6 | Copyright 2012,2013 Robert Nees
7 | Licensed under the Apache License, Version 2.0 (the "License");
8 | http://sushihangover.blogspot.com
9 | .SYNOPSIS
10 | .DESCRIPTION
11 | Get the standard output of a process so we can 'pipe' it
12 | to another process and avoid PowerShell's object pipe which is not
13 | what you want when you do things like this in CMD.exe or a Linux shell:
14 | Bash >> makepretty -if myface.jpg -of - | findmate -if - -of listofladys.csv
15 | Becomes in PowerShell:
16 | Do-RawPipe makepretty.exe "-if myface.jpg -of -" findmate.exe "-if - -of listofladys.csv"
17 | .EXAMPLE
18 | dir c:\ /s /b | find "LOG"
19 | .EXAMPLE
20 | dir | sort
21 | cat apple.txt | wc
22 | cat apple.txt | sed -e "s/e/J/g"
23 |
24 | .LINK
25 | http://sushihangover.blogspot.com
26 | #>
27 | [CmdletBinding()]
28 | param(
29 | [Parameter(Mandatory=$True)][string] $Process1,
30 | [Parameter(Mandatory=$False)][string] $Args1,
31 | [Parameter(Mandatory=$True)][string] $Process2,
32 | [Parameter(Mandatory=$False)][string] $Args2,
33 | [Parameter(Mandatory=$False)][string] $Working1Path,
34 | [Parameter(Mandatory=$False)][string] $Working2Path,
35 | [Parameter(Mandatory=$False)][int] $BufferSize = 32768
36 | )
37 | write-output "Building Process 1 startup information"
38 | $process1StartInfo = New-Object System.Diagnostics.ProcessStartInfo
39 | $process1StartInfo.FileName = $Process1
40 | if ($working1Path -gt "") {
41 | $process1StartInfo.WorkingDirectory = $Working1Path
42 | } else {
43 | $process1StartInfo.WorkingDirectory = ((Get-Location).Path)
44 | }
45 | if ($Args1) {
46 | $process1StartInfo.Arguments = $Args1
47 | }
48 | write-output "Building Process 2 startup information"
49 | $process2StartInfo = New-Object System.Diagnostics.ProcessStartInfo
50 | $process2StartInfo.FileName = $Process2
51 | if ($Working2Path -gt "") {
52 | $process2StartInfo.WorkingDirectory = $Working2Path
53 | } else {
54 | $process2StartInfo.WorkingDirectory = ((Get-Location).Path)
55 | }
56 | if ($Args2) {
57 | $process2StartInfo.Arguments = $Args2
58 | }
59 |
60 | try {
61 | $process1StartInfo.UseShellExecute = $True
62 | $process1StartInfo.RedirectStandardInput = $False
63 | $process1StartInfo.RedirectStandardOutput = $True
64 |
65 | $process2StartInfo.UseShellExecute = $false
66 | $process2StartInfo.RedirectStandardInput = $true
67 | $process2StartInfo.RedirectStandardOutput = $false
68 |
69 | write-output "Starting $Process1 process"
70 | $process1StartInfo
71 | $Process1ID = [System.Diagnostics.Process]::Start($process1StartInfo)
72 | write-output "Starting $Process2 process"
73 | $process2ID = [System.Diagnostics.Process]::Start($process2StartInfo)
74 |
75 | $foo = 0
76 | $buffer = new-object char[] $BufferSize
77 | try {
78 | do {
79 | $readCount = $Process1ID.StandardOutput.ReadBLock($buffer, 0, $buffer.Length)
80 | $process2ID.StandardInput.Write($buffer, 0, $readCount)
81 | $process2ID.StandardInput.Flush()
82 | $foo++
83 | } while ($readCount -gt 0)
84 | } catch {
85 | write-host "ReadBlock Error @ " ((($foo - 1) * $buffer.Length) + $readCount)
86 | }
87 | write-host "$Process1 Std Output Length : " ((($foo) * $buffer.Length) + $readCount)
88 |
89 | Write-Debug "Process2 StdIn close"
90 | $process2.StandardInput.Close()
91 | Write-Debug "Process2 wait for exit"
92 | #$process2.WaitForExit()
93 | if ($process2.HasExited) {
94 | write-debug $Proces2 " Exit Code = " $Processs2ID.ExitCode
95 | }
96 | Write-Debug "Process1 StdOut close"
97 | $process1.StandardOutput.Close()
98 | Write-Debug "Process1 wait for exit"
99 | #$process1.WaitForExit()
100 | if ($process1.HasExited) {
101 | write-debug $Process1 " Exit Code = " $Processs1ID.ExitCode
102 | }
103 | } catch {
104 | write-host "Catch Error and clean up"
105 | # $process2.StandardInput.Flush()
106 | #$process2.StandardInput.Close()
107 | #$process2.Close; $process2.Dispose()
108 | #$process1.StandardInput.Close()
109 | #$process1.Close; $process1.Dispose()
110 | # exit
111 | }
112 | }
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/foobar/Get-RandomString.ps1:
--------------------------------------------------------------------------------
1 | # Get-RandomString.ps1
2 | # Written by Bill Stewart (bstewart@iname.com)
3 |
4 | #requires -version 2
5 |
6 | <#
7 | .SYNOPSIS
8 | Outputs random strings.
9 |
10 | .DESCRIPTION
11 | Outputs one or more random strings containing specified types of characters.
12 |
13 | .PARAMETER Length
14 | Specifies the length of the output string(s). The default value is 8. You cannot specify a value less than 4.
15 |
16 | .PARAMETER LowerCase
17 | Specifies that the string must contain lowercase ASCII characters (default). Specify -LowerCase:$false if you do not want the random string(s) to contain lowercase ASCII characters.
18 |
19 | .PARAMETER UpperCase
20 | Specifies that the string must contain upercase ASCII characters.
21 |
22 | .PARAMETER Numbers
23 | Specifies that the string must contain number characters (0 through 9).
24 |
25 | .PARAMETER Symbols
26 | Specifies that the string must contain typewriter symbol characters.
27 |
28 | .PARAMETER Count
29 | Specifies the number of random strings to output.
30 |
31 | .EXAMPLE
32 | PS C:\> Get-RandomString
33 | Outputs a string containing 8 random lowercase ASCII characters.
34 |
35 | .EXAMPLE
36 | PS C:\> Get-RandomString -Length 14 -Count 5
37 | Outputs 5 random strings containing 14 lowercase ASCII characters each.
38 |
39 | .EXAMPLE
40 | PS C:\> Get-RandomString -UpperCase -LowerCase -Numbers -Count 10
41 | Outputs 10 random 8-character strings containing uppercase, lowercase, and numbers.
42 |
43 | .EXAMPLE
44 | PS C:\> Get-RandomString -Length 32 -LowerCase:$false -Numbers -Symbols -Count 20
45 | Outputs 20 random 32-character strings containing numbers and typewriter symbols.
46 |
47 | .EXAMPLE
48 | PS C:\> Get-RandomString -Length 4 -LowerCase:$false -Numbers -Count 15
49 | Outputs 15 random 4-character strings containing only numbers.
50 | #>
51 |
52 | param(
53 | [UInt32] $Length=8,
54 | [Switch] $LowerCase=$TRUE,
55 | [Switch] $UpperCase=$FALSE,
56 | [Switch] $Numbers=$FALSE,
57 | [Switch] $Symbols=$FALSE,
58 | [Uint32] $Count=1
59 | )
60 |
61 | if ($Length -lt 4) {
62 | throw "-Length must specify a value greater than 3"
63 | }
64 |
65 | if (-not ($LowerCase -or $UpperCase -or $Numbers -or $Symbols)) {
66 | throw "You must specify one of: -LowerCase -UpperCase -Numbers -Symbols"
67 | }
68 |
69 | # Specifies bitmap values for character sets selected.
70 | $CHARSET_LOWER = 1
71 | $CHARSET_UPPER = 2
72 | $CHARSET_NUMBER = 4
73 | $CHARSET_SYMBOL = 8
74 |
75 | # Creates character arrays for the different character classes,
76 | # based on ASCII character values.
77 | $charsLower = 97..122 | foreach-object { [Char] $_ }
78 | $charsUpper = 65..90 | foreach-object { [Char] $_ }
79 | $charsNumber = 48..57 | foreach-object { [Char] $_ }
80 | $charsSymbol = 35,36,42,43,44,45,46,47,58,59,61,63,64,
81 | 91,92,93,95,123,125,126 | foreach-object { [Char] $_ }
82 |
83 | # Contains the array of characters to use.
84 | $charList = @()
85 | # Contains bitmap of the character sets selected.
86 | $charSets = 0
87 | if ($LowerCase) {
88 | $charList += $charsLower
89 | $charSets = $charSets -bor $CHARSET_LOWER
90 | }
91 | if ($UpperCase) {
92 | $charList += $charsUpper
93 | $charSets = $charSets -bor $CHARSET_UPPER
94 | }
95 | if ($Numbers) {
96 | $charList += $charsNumber
97 | $charSets = $charSets -bor $CHARSET_NUMBER
98 | }
99 | if ($Symbols) {
100 | $charList += $charsSymbol
101 | $charSets = $charSets -bor $CHARSET_SYMBOL
102 | }
103 |
104 | # Returns True if the string contains at least one character
105 | # from the array, or False otherwise.
106 | function test-stringcontents([String] $test, [Char[]] $chars) {
107 | foreach ($char in $test.ToCharArray()) {
108 | if ($chars -ccontains $char) { return $TRUE }
109 | }
110 | return $FALSE
111 | }
112 |
113 | 1..$Count | foreach-object {
114 | # Loops until the string contains at least
115 | # one character from each character class.
116 | do {
117 | # No character classes matched yet.
118 | $flags = 0
119 | $output = ""
120 | # Create output string containing random characters.
121 | 1..$Length | foreach-object {
122 | $output += $charList[(get-random -maximum $charList.Length)]
123 | }
124 | # Check if character classes match.
125 | if ($LowerCase) {
126 | if (test-stringcontents $output $charsLower) {
127 | $flags = $flags -bor $CHARSET_LOWER
128 | }
129 | }
130 | if ($UpperCase) {
131 | if (test-stringcontents $output $charsUpper) {
132 | $flags = $flags -bor $CHARSET_UPPER
133 | }
134 | }
135 | if ($Numbers) {
136 | if (test-stringcontents $output $charsNumber) {
137 | $flags = $flags -bor $CHARSET_NUMBER
138 | }
139 | }
140 | if ($Symbols) {
141 | if (test-stringcontents $output $charsSymbol) {
142 | $flags = $flags -bor $CHARSET_SYMBOL
143 | }
144 | }
145 | }
146 | until ($flags -eq $charSets)
147 | # Output the string.
148 | $output
149 | }
150 |
--------------------------------------------------------------------------------
/modules/SushiHangover-Tools/Process-Grep.ps1:
--------------------------------------------------------------------------------
1 | Set-StrictMode –Version latest
2 | function Process-Grep {
3 | <#
4 | .NOTES
5 | Copyright 2012/2013 Robert Nees
6 | Licensed under the Apache License, Version 2.0 (the "License");
7 | http://sushihangover.blogspot.com
8 | .SYNOPSIS
9 | *nix style grep
10 | .DESCRIPTION
11 | This script provides a wrapper to give Linux/Grep style cmd line options
12 | Note: It needs a lot of help/work to complete
13 | .EXAMPLE
14 | .LINK
15 | http://sushihangover.blogspot.com
16 | .LINK
17 | https://git.com/sushihangover
18 | #>
19 | [cmdletBinding()]
20 | param(
21 | [Parameter(Mandatory=$False)][Alias("filter")][string]$FilterString,
22 | [Parameter(Mandatory=$False)][Alias("i")][switch]$IgnoreCase,
23 | [Parameter(Mandatory=$False)][Alias("v")][switch]$InvertMatch,
24 | [Parameter(Mandatory=$False)][Alias("A")][int]$AfterContext = 0,
25 | [Parameter(Mandatory=$False)][Alias("B")][int]$BeforeContext = 0,
26 | [Parameter(Mandatory=$False)][Alias("file")][string]$PatternFilename = '',
27 | [Parameter(Mandatory=$False,ValueFromPipeline=$True)][string]$Text = ''
28 | )
29 | begin {
30 | $LineCount = 0;
31 | Write-Debug "( begin) : Count = $LineCount; filter = $filterString";
32 | if ($PatternFilename -ne '') {
33 | # Load Patterns from file
34 | }
35 | if ($AfterContext -gt 0) {
36 | $AfterContextCount = 0
37 | $AfterContextArray = new-object System.Collections.Queue ($AfterContext + 1)
38 | }
39 | if ($BeforeContext -gt 0) {
40 | $BeforeContextArray = new-object System.Collections.Queue ($BeforeContext + 1)
41 | }
42 | }
43 | process {
44 | Function OutputMatch {
45 | Write-Output "match $_"
46 | if ($BeforeContext -gt 0) {
47 | #$BeforeContextArray.ToArray()
48 | foreach ($foo in $BeforeContextArray) {
49 | $foo
50 | }
51 | $BeforeContextArray.Clear()
52 | return
53 | }
54 | if ($AfterContext -gt 0) {
55 | #$AfterContextCount++
56 | #write-output $AfterContextCount
57 | if ($AfterContextCount -eq $AfterContextArray.Count) {
58 | write-output "dequeue match"
59 | #$AfterContextCount--
60 | #$AfterContextArray.Dequeue()
61 | } else {
62 | #write-output "dequeue match"
63 | #$AfterContextCount--
64 | # $AfterContextArray.Dequeue()
65 | }
66 | return
67 | }
68 | $_
69 | }
70 | $LineCount++
71 | if ($BeforeContext -gt 0) {
72 | if ($BeforeContextArray.Count -gt $BeforeContext) { $foobar = $BeforeContextArray.Dequeue() }
73 | $foobar = $BeforeContextArray.Enqueue($_)
74 | }
75 | if ($AfterContext -gt 0) {
76 | $foobar = $AfterContextArray.Enqueue($_)
77 | Write-Output "enqueue (2) $_"
78 |
79 | # if (($AfterContextArray.Count -gt 0) -and ($AfterContextContext -le $AfterContext)) {
80 | # $AfterContextCount++
81 | # $foobar = $AfterContextArray.Enqueue($_)
82 | # Write-Output "enqueue (2) $_"
83 | # }
84 | }
85 | if ($IgnoreCase.IsPresent) {
86 | if ( ($_ -cmatch $FilterString ) -and (-not $InvertMatch.IsPresent) ) {
87 | if ($AfterContext -gt 0) {$AfterContextCount++}; OutputMatch $_
88 | } else {
89 | if ($AfterContext -gt 0) {$AfterContextCount++}; OutputMatch $_
90 | }
91 | } else {
92 | if ( ( $_ -match $FilterString ) -and (-not $InvertMatch.IsPresent) ) {
93 | if ($AfterContext -gt 0) {$AfterContextCount++}; OutputMatch $_
94 | } elseif ( ( $_ -notmatch $FilterString ) -and ($InvertMatch.IsPresent) ) {
95 | if ($AfterContext -gt 0) {$AfterContextCount++}; OutputMatch $_
96 | }
97 | }
98 | #write-output $AfterContextCount
99 | if ($AfterContext -gt 0) {
100 | #write-output $AfterContextCount
101 | #Write-Output $AfterContextArray.Count
102 | if ($AfterContextCount -lt $AfterContextArray.Count) {
103 | #$AfterContextCount--
104 | $foobar = $AfterContextArray.Dequeue()
105 | Write-Output "dequeued"
106 | }
107 | }
108 | }
109 | end {
110 | if ($AfterContext -gt 0) {
111 | if ($AfterContextArray.Count -gt0) {
112 | Write-Output "dump array"
113 | $AfterContextArray.ToArray()
114 | $AfterContextArray.Clear()
115 | }
116 | }
117 | Write-Debug "( end) : Count = $LineCount; filter = $FilterString";
118 | if ($AfterContext -gt 0) {
119 | $AfterContextArray.Clear()
120 | $AfterContextArray = $null
121 | }
122 | if ($BeforeContext -gt 0) {
123 | $BeforeContextArray.Clear()
124 | $BeforeContextArray = $null
125 | }
126 |
127 | }
128 | }
129 |
--------------------------------------------------------------------------------
/modules/FileSystem/en-us/about_FileSystem_Readme.help.txt:
--------------------------------------------------------------------------------
1 |
2 | NAME
3 | Get-FreeDiskSpace
4 |
5 | SYNOPSIS
6 | Gets the free disk space on logical drives
7 | of the local computer or a remote computer.
8 |
9 |
10 | SYNTAX
11 | Get-FreeDiskSpace [-Drive