首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PowerShell模块(特别是PSReadline)如何在V5中自动加载?

PowerShell模块(特别是PSReadline)如何在V5中自动加载?
EN

Stack Overflow用户
提问于 2016-11-29 09:31:19
回答 2查看 367关注 0票数 3

我最近安装了Windows 10,其中包括V5 of PowerShell,或者确切地说是5.1.14393.206 ($PSVersionTable.PSVersion)。

在新计算机上,我安装了PSReadline。不过,Windows 10已经安装好了。

我的问题是,当没有可导入PSReadline的配置文件时(或者从它调用命令),如何自动加载它?

作为证据,我运行了以下代码:

代码语言:javascript
复制
$PROFILE | Get-Member -MemberType NoteProperty | % {
    $path = $PROFILE.$($_.Name);
    $exists = Test-Path $path;
    [pscustomobject]@{ Path = $path; Exists = $exists }
}

为了得到这个:

代码语言:javascript
复制
Path                                                                        Exists
----                                                                        ------
C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1                       False
C:\Windows\System32\WindowsPowerShell\v1.0\Microsoft.PowerShell_profile.ps1  False
C:\Users\tahir\Documents\WindowsPowerShell\profile.ps1                       False
C:\Users\tahir\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1  False

我经历了所有的https://stackoverflow.com/a/23942543/288393

  • 没有为Import-Module调用PSReadline,因为没有配置文件来调用它。
  • PSReadline模块中没有命令,因为像以前一样,没有配置文件来调用它。

有人能解释一下这种行为吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-11-29 16:17:43

如果进程是交互式的,控制台主机中有特殊的代码来加载PSReadline。您可以看到代码这里

票数 4
EN

Stack Overflow用户

发布于 2016-11-29 10:37:34

PSReadline位于预定义的模块文件夹C:\Program Files\WindowsPowerShell\Modules中,因为它位于PowerShell的自动cmdlet发现和模块加载过程中,当调用模块中的任何函数时,模块加载过程都会加载该模块。那个过程加入PS v3

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40862209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档