PowerShell/Scripts/set-profile.ps1

32 lines
882 B
PowerShell
Raw Normal View History

2021-09-27 10:38:12 +02:00
<#
2021-07-13 21:10:02 +02:00
.SYNOPSIS
2022-08-29 12:25:24 +02:00
Sets the user's PowerShell profile
2021-10-04 21:29:23 +02:00
.DESCRIPTION
2022-01-30 10:49:30 +01:00
This PowerShell script sets the PowerShell profile for the current user.
2021-07-13 21:10:02 +02:00
.EXAMPLE
2021-09-24 17:19:49 +02:00
PS> ./set-profile
2021-07-13 21:10:02 +02:00
.LINK
https://github.com/fleschutz/PowerShell
2022-01-30 10:49:30 +01:00
.NOTES
2022-08-29 12:25:24 +02:00
Author: Markus Fleschutz | License: CC0
2021-02-24 20:18:27 +01:00
#>
try {
2023-04-01 21:47:02 +02:00
"⏳ (1/3) Querying path to PowerShell profile 'CurrentUserCurrentHost'..."
2021-02-24 20:18:27 +01:00
$PathToProfile = $PROFILE.CurrentUserCurrentHost
2022-08-29 12:25:24 +02:00
"$PathToProfile"
2023-04-01 21:47:02 +02:00
"⏳ (2/3) Creating the profile (if non-existent)..."
2022-08-29 12:25:24 +02:00
$Null = New-Item -Path $profile -ItemType "file" -Force
2021-02-24 20:18:27 +01:00
2023-04-01 21:47:02 +02:00
"⏳ (3/3) Copying my-profile.ps1..."
2022-08-29 12:25:24 +02:00
$PathToRepo = "$PSScriptRoot/.."
Copy-Item "$PathToRepo/Scripts/my-profile.ps1" "$PathToProfile" -force
2021-02-24 20:18:27 +01:00
2023-04-01 21:47:02 +02:00
"✔️ updated your PowerShell profile by my-profile.ps1 - it gets active on next login"
2021-09-27 10:09:45 +02:00
exit 0 # success
2021-02-24 20:18:27 +01:00
} catch {
2022-04-13 12:06:32 +02:00
"⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
2021-02-24 20:18:27 +01:00
exit 1
}