我在"profile.ps1";
在powershell启动并正常工作时加载
如何从Powershell中获取该函数的定义路径
通常我会用
(Get-Command -commandtype function -name **GreatFunction1**).Module
但在这种情况下,它返回$null,所以我无法从这里获得路径
?还有别的办法吗
我需要知道加载了什么函数的文件的路径。。。
尝试`${function:GreatFunction1}。文件这应该会为您提供函数来自的完整路径
https://stackoverflow.com/a/16008967/13160707
根据@nikkelly在他们的回答中提到的内容并将其推广,您可以通过首先访问函数的ScriptBlock
属性,然后访问ScriptBlock的File
属性来实现这一点。
这里有两个等价的例子:
(Get-ChildItem Function: | Where-Object Name -like "**GreatFunction1**").ScriptBlock.File
(Get-Command -CommandType Function -Name **GreatFunction1**).ScriptBlock.File