Skip to content

Instantly share code, notes, and snippets.

View PSingletary's full-sized avatar
🔍
Search

PSingletary PSingletary

🔍
Search
View GitHub Profile
@Desani
Desani / ScanMedia.md
Last active March 15, 2025 12:38
3.6 - Corrected issues with determining terminal size in specific use cases. Added file encoding thanks to recommendation by LordKenmou. Fixed update script checker.

This script utilizes ffmpeg, the same tool Plex uses, to decode the video stream and captures the output for any errors during playback and sends the playback errors to a log file. So essentially it plays the video in the background faster than regular speed. It then checks the error output log file to see if there is anything inside. If ffmpeg was able to cleanly play the file, it counts as a passed file. If there is any error output, an error could be anything from a container issue, a missed frame issue, media corruption or more, it counts the file as failed. So if there would be an issue with playback and a video freezing, it would be caught by this method of checking for errors. Because of the nature of the error log, any errors that show up, even simple ones, will all count as a fail and the output is captured so you can view the error log. Some simple errors are easy to fix so I have included an auto-repair feature which attempts to re-encode the file which is able to correct some issues that would cau

@PSingletary
PSingletary / Script_Template.ps1
Last active December 18, 2017 12:39 — forked from 9to5IT/Script_Template.ps1
PowerShell: Script Template
<#
.SYNOPSIS
<A brief description of the function or script. This keyword can be used only once in each topic.>
.DESCRIPTION
<A detailed description of the function or script. This keyword can be used only once in each topic.>
.PARAMETER <Parameter-Name>
<The description of a parameter. Add a ".PARAMETER" keyword for each parameter in the function or script syntax.
Type the parameter name on the same line as the ".PARAMETER" keyword. Type the parameter description on the lines following the ".PARAMETER" keyword. Windows PowerShell interprets all text between the ".PARAMETER" line and the next keyword or the end of the comment block as part of the parameter description. The description can include paragraph breaks.
@jdhitsolutions
jdhitsolutions / PSWho.ps1
Last active November 10, 2023 15:58
A PowerShell function for getting user metadata. See help for more details.
Function Get-PSWho {
<#
.SYNOPSIS
Get PowerShell user summary information
.DESCRIPTION
This command will provide a summary of relevant information for the current
user in a PowerShell session. You might use this to troubleshoot an end-user
problem running a script or command. The default behavior is to write an
object to the pipeline, but you can use the -AsString parameter to force the
@keithga
keithga / Update-INIFiles.ps1
Created September 16, 2017 03:34
Update CustomSettings.ini file.
<#
.SYNOPSIS
Update CustomSettings.ini file.
.DESCRIPTION
Updates one or more CUstomSettings.ini files with a common value.
Calling powershell.exe instance must have read/write privelages to the share.
@keithga
keithga / Get-LatestUpdate.ps1
Last active September 26, 2024 21:54
script to get latest build.
<#
.SYNOPSIS
Get the latest Cumulative update for Windows
.DESCRIPTION
This script will return the list of Cumulative updates for Windows 10 and Windows Server 2016 from the Microsoft Update Catalog.
.NOTES
Copyright Keith Garner ([email protected]), All rights reserved.
@proxb
proxb / Struct.ps1
Created April 27, 2017 22:54
Using PowerShell and Reflection to dynamically build a Struct with Constructors and Methods
#region Module Builder
$Domain = [AppDomain]::CurrentDomain
$DynAssembly = New-Object System.Reflection.AssemblyName(([guid]::NewGuid().ToString()))
$AssemblyBuilder = $Domain.DefineDynamicAssembly($DynAssembly, [System.Reflection.Emit.AssemblyBuilderAccess]::Run) # Only run in memory
$ModuleBuilder = $AssemblyBuilder.DefineDynamicModule(([guid]::NewGuid().ToString()), $False)
#endregion Module Builder
#region STRUCTs
#Order of creating these Structs is important
#region MyStruct
$Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit'
@davefunkel
davefunkel / Script-Template-WithCreds.ps1
Last active August 28, 2024 07:24
PowerShell Script Template with Saved Creds
<#
.SYNOPSIS
The synopsis goes here. This can be one line, or many.
This version of the template has inbuilt functions to capture credentials and store it securely for reuse
Avoids the need to have plaintext passwords in the script
.DESCRIPTION
The description is usually a longer, more detailed explanation of what the script or function does.
Take as many lines as you need.
@jdhitsolutions
jdhitsolutions / PowerShellNap.ps1
Last active February 21, 2022 09:44
An advanced PowerShell function that you can use as an alarm clock while taking a nap.
#requires -Version 5.1
Function Start-PSNap {
<#
.SYNOPSIS
Start a PowerShell napping session.
.DESCRIPTION
Use this command to start a short napping session. The command will alert you when you nap is up with a chime and a message. You have an option of displaying the message on the screen or having it spoken.
@bortzmeyer
bortzmeyer / gist:705384b215034162da92
Created December 16, 2015 17:00
The longest TLD (including Unicode ones)
TRAVELERSINSURANCE 18
VERMöGENSBERATUNG 17
VERMöGENSBERATER 16
SANDVIKCOROMANT 15
CANCERRESEARCH 14
SPREADBETTING 13
INTERNATIONAL 13
VERSICHERUNG 12
SCHOLARSHIPS 12
CONSTRUCTION 12
@RafPe
RafPe / AutoMarkdown.ps1
Last active December 3, 2017 23:00
Autodocument your Powershell modules using Markdown
param
(
[string]$PathToModule='C:\temp\Cos.psm1',
[string]$ModuleName = 'cos',
[string]$OutputFolderPath='C:\temp',
[string]$ResultFileNamePrefix='cos_module',
[string]$ResultFileNameSuffix = 'md'
)