我喜欢对我的 $profile 文件进行大量更改。保存更改后,我想使用“sop”别名来获取该文件。以下是我希望实现的方法:
set-alias sop Source-Profile
function Source-Profile {
. $profile
}
此函数不会抛出任何错误,因此它似乎可以工作。但是,当我对 $profile 文件进行更改时,此函数似乎没有任何作用。我仍然必须. $profile
从 PS 提示符中键入以重新评估该文件。这没关系,但这有点麻烦。我宁愿使用别名来获取该文件。
我在这里遗漏了什么?
答案1
对文件进行点源化会在当前作用域(而不是其自身作用域)中运行该文件。要在函数中对文件进行点源化,并让文件中的定义包含在调用作用域中,您需要对函数进行点源化。尝试以下操作:
. sop