PowerShell/Docs/add-memo.md
2022-11-18 17:02:20 +01:00

1.8 KiB
Raw Blame History

The add-memo.ps1 PowerShell Script

This PowerShell script adds the given memo text to $HOME/Memos.csv.

Parameters

add-memo.ps1 [[-text] <String>] [<CommonParameters>]

-text <String>
    Specifies the text to memorize
    
    Required?                    false
    Position?                    1
    Default value                
    Accept pipeline input?       false
    Accept wildcard characters?  false

[<CommonParameters>]
    This script supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, 
    WarningVariable, OutBuffer, PipelineVariable, and OutVariable.

Example

PS> ./add-memo "Buy apples"
 added to 📄/home/markus/Memos.csv

Notes

Author: Markus Fleschutz | License: CC0

https://github.com/fleschutz/PowerShell

Source Code

<#
.SYNOPSIS
	Adds a memo text 
.DESCRIPTION
	This PowerShell script adds the given memo text to $HOME/Memos.csv.
.PARAMETER text
	Specifies the text to memorize
.EXAMPLE
	PS> ./add-memo "Buy apples"
	✔️ added to 📄/home/markus/Memos.csv
.LINK
	https://github.com/fleschutz/PowerShell
.NOTES
	Author: Markus Fleschutz | License: CC0
#>

param([string]$text = "")

try {
	if ($text -eq "" ) { $text = read-host "Enter the memo text to add" }

	$Path = "$HOME/Memos.csv"
	$Time = get-date -format "yyyy-MM-ddTHH:mm:ssZ" -asUTC
	$User = $(whoami)
	$Line = "$Time,$User,$text"

	if (-not(test-path "$Path" -pathType leaf)) {
		write-output "Time,User,text" > "$Path"
	}
	write-output $Line >> "$Path"

	"✔️ added to 📄$Path"
	exit 0 # success
} catch {
	"⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
	exit 1
}

Generated by convert-ps2md.ps1 using the comment-based help of add-memo.ps1