为什么这个更改目录的 Powershell 函数不起作用?
Why does this Powershell function to change directory not work?
我使用带有 posh-git 的 Powershell window 来处理 git,并且已经厌倦了重复输入 cd ..\Database
、cd ..\Backend
和 cd ..\Frontend
在我正在使用的回购协议之间切换。我想创建别名,以便我可以简单地 运行 db
、be
或 fe
来执行此操作。
经过一些研究和失败的实验后,我一无所获,发现 告诉我别名不能带参数,我应该使用函数,所以我试了一下。
我可以使用命令成功切换到所需目录
Set-Location C:\Projects\Database
所以我在 Powershell window 中执行了以下命令来创建一个函数
function db { set-location C:\Projects\Database }
并且执行无误。但是紧接着 运行ning db
,我收到以下错误。
db : The term 'Set-Location C:\Projects\Database' is not recognized as the name of a cmdlet, function, script file, or
operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try
again.
At line:1 char:1
+ db
+ ~~
+ CategoryInfo : ObjectNotFound: (Set-Location C:\Projects\Database:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
我想最终添加命令来创建我的配置文件脚本的功能,但一直无法通过这个简单的块,我感到非常沮丧,因为我无法获得看似简单的东西工作。
谁能帮我解决这个问题?
您的错误消息抱怨找不到 Set-Location C:\Projects\Database
命令,但被标记为错误的命令是 db
。我能找到的关于此错误消息的唯一合理解释是 db
命令是 Set-Location C:\Projects\Database
的别名。您可能会在尝试运行之前尝试创建一个别名。别名的优先级高于函数。因此,即使你现在有 db
功能,db
仍然作为别名解析并产生错误。您必须删除别名 Remove-Item Alias::db
,然后 db
才能正常运行。
我使用带有 posh-git 的 Powershell window 来处理 git,并且已经厌倦了重复输入 cd ..\Database
、cd ..\Backend
和 cd ..\Frontend
在我正在使用的回购协议之间切换。我想创建别名,以便我可以简单地 运行 db
、be
或 fe
来执行此操作。
经过一些研究和失败的实验后,我一无所获,发现
我可以使用命令成功切换到所需目录
Set-Location C:\Projects\Database
所以我在 Powershell window 中执行了以下命令来创建一个函数
function db { set-location C:\Projects\Database }
并且执行无误。但是紧接着 运行ning db
,我收到以下错误。
db : The term 'Set-Location C:\Projects\Database' is not recognized as the name of a cmdlet, function, script file, or
operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try
again.
At line:1 char:1
+ db
+ ~~
+ CategoryInfo : ObjectNotFound: (Set-Location C:\Projects\Database:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
我想最终添加命令来创建我的配置文件脚本的功能,但一直无法通过这个简单的块,我感到非常沮丧,因为我无法获得看似简单的东西工作。
谁能帮我解决这个问题?
您的错误消息抱怨找不到 Set-Location C:\Projects\Database
命令,但被标记为错误的命令是 db
。我能找到的关于此错误消息的唯一合理解释是 db
命令是 Set-Location C:\Projects\Database
的别名。您可能会在尝试运行之前尝试创建一个别名。别名的优先级高于函数。因此,即使你现在有 db
功能,db
仍然作为别名解析并产生错误。您必须删除别名 Remove-Item Alias::db
,然后 db
才能正常运行。