我想ssh
在我的 PowerShell 配置文件中将“别名”设置为:
ssh -F $HOME\.ssh\config
我有一个自定义$HOME
环境,但是 Win32 OpenSSH 实现使用%USERPROFILE%
无法修改的功能,并且开发人员也没有打算切换,$HOME
所以我正在寻找强制-F
标志的替代方法。
我尝试查看Set-Alias
但它似乎不允许额外的参数,而且我担心如果我调用一个ssh
函数,我最终会陷入递归循环ssh
......
无论如何都要实现上述目标?
答案1
我尝试查看 Set-Alias,但它似乎不允许使用额外的参数
可以办到。
由于您总是使用相同的参数,因此以下示例应该可以根据您的需要进行修改-F $HOME\.ssh\config
:
示例 5:为带参数的命令创建别名
此示例显示如何为带有参数的命令分配别名。
您可以为 cmdlet 创建别名,例如
Set-Location
。您不能为带有参数和值的命令创建别名,例如as Set-Location -Path C:\Windows\System32
。要为命令创建别名,请创建一个包含该命令的函数,然后为该函数创建别名。有关更多信息,请参阅about_Functions。
PS> Function CD32 {Set-Location -Path C:\Windows\System32} PS> Set-Alias -Name Go -Value CD32
创建了一个名为 CD32 的函数。该函数使用带有目录参数 的
Set-Location
cmdlet 。Path
specify
C:\Windows\System32
该
Set-Alias
cmdlet 在当前 PowerShell 会话中为该函数创建别名。Name
参数指定别名的名称,Go
。Value
参数指定函数的名称,CD32
。要运行别名,请
Go
在 PowerShell 命令行中键入。该CD32
函数运行并切换到目录C:\Windows\System32
。
来源设置别名