在 PowerShell 中创建别名

在 PowerShell 中创建别名

我想在 PowerShell 中为 Cygwinbin目录中的所有可执行文件创建一个永久别名:

C:\Cygwin64\bin

我可以对单个可执行文件执行此操作,例如grep通过:

Set-Alias grep  "C:\cygwin64\bin\grep"

当我尝试为目录创建别名时bin,它不起作用:

Set-Alias Cygwin C:\cygwin64\bin\

  Cygwin\grep ... it failed with this error:

  Cygwin\grep : The module 'cygwin' could not be loaded. For more information, run 'Import-Module Cygwin'.

  At line:1 char:1
  + Cygwin\grep
  + ~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (cygwin\grep:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CouldNotAutoLoadModule

我如何创建bin目录的别名以便可以从中调用任何可执行文件?

答案1

设置别名适用于函数、脚本或文件,而不是文件夹。使用-Name-Value属性来描述这里

Set-Alias cmdlet 在当前 PowerShell 会话中创建别名。Name 参数指定别名的名称 np。Value 参数指定路径和应用程序名称 C:\Windows\notepad.exe。

就您而言,cmdlet 将是:

Set-Alias -Name grep -Value 'C:\cygwin64\bin\grep.exe'

您可以使用新-PSDrive如图所示回答来自 StackOverflow 将您的文件夹变成新的 powershell 驱动器。

相关内容