Я хочу создать набор псевдонимов в файле, который я могу обновить, а затем вызвать псевдоним aa
, чтобы файл выполнялся, и мне предоставлены новые псевдонимы в текущем сеансе. В конце концов, я хотел, чтобы эти псевдонимы доступны автоматически при запуске PS поэтому я использую C:\Users\Administrator\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
, чтобы поместить их в данный момент он выглядит следующим образом:.
$psdir="C:\Users\Administrator\Documents\WindowsPowerShell"
function Reload-Profile{
# . ${profile} DOES NOT WORK
# Write-Host ${profile}
# Write-Host $profile
# powershell $profile DOES NOT WORK
# Get-ChildItem "${psdir}\*.ps1" | %{.$_} DOES NOT WORK
Write-Host "Custom PowerShell Environment Loaded"
}
function Edit-Profile
{
powershell_ise.exe $profile
}
Set-Alias show Get-ChildItem
Set-Alias show2 Get-ChildItem
Set-Alias aa Reload-Profile
Set-Alias ep Edit-Profile
Как я могу сделать это так, что псевдонимы загружаются при запуске, но я могу также обновить их с помощью псевдонима aa
и включить их в текущую сессию?
'Add-Type 'using System.Management.Automation; используя System.Management.Automation.Runspaces; [Cmdlet («Reload», «Profile»)] public class ReloadProfileCmdlet: PSCmdlet {protected override void EndProcessing() {InvokeCommand.InvokeScript (". $ Profile", false, PipelineResultTypes.Output | PipelineResultTypes.Error, null); }} '-PassThru | Выбрать -Первая 1 -ExpandProperty Assembly | Import-Module; Set-Alias aa Reload-Profile' – PetSerAl
@PetSerAl Неудивительно, что я не мог понять это. Спасибо! –