如何使用加载的脚本将 powershell 保持在 repl 模式

How can I keep powershell in repl mode with a loaded script

我正在尝试启动一个 powershell 实例,它加载一个脚本并保持打开状态,这样我仍然可以手动调用该脚本加载的方法。

我正在尝试从 cmd instance/batchfile:

点源脚本并将其通过管道传输到 powershell,如下所示
echo . .\script.ps1 | powershell

本例中的结果是 powershell 启动、加载我的脚本、执行它并退出。我试过 运行 -noexit 参数,它没有效果。

我正在考虑另一种选择,启动一个 powershell 进程并将我的 dot source 命令通过管道传输到它的标准输入 - 但这可能不允许我再与该进程交互,因为它的标准输入由主机打开过程。

如果您需要 运行 一个脚本文件,以便 window 保持打开状态并且执行后可以访问变量。

尝试像这样点采购脚本文件:

powershell -noexit ". .\script.ps1"

脚本完成后,您可以访问脚本定义的任何内部变量。假设变量在脚本级别范围内。