如何在点源时调用全局命令
How to invoke global commands while dot sourced
示例:
dot sourcing openssl.exe 在其上下文中调用命令
. .\openssl.exe
OpenSSL> version -a
生成版本信息
如果我想用传统的 cls
清除屏幕,它将尝试在 OpenSSL.
的上下文中调用它
如何从 previous/non-dot 源上下文中调用 cls
。除此之外,您甚至可以 "step back" 来自点采购吗?
我相信您最好在 non-interactive 模式下执行您的命令:. .\
openssl.exe version -a
。这将吐出版本信息,然后将您留在 shell 中。有些程序在交互模式下有命令调用 shell 命令(想到 MySQL ),但看起来 OpenSSL 不支持它。您可以退出交互模式并使用 quit
命令返回您的 shell。
您正在调用交互式 openssl
会话。在该会话中,您可以 运行 OpenSSL(子)命令,但不能使用 PowerShell cmdlet(因为环境现在是 OpenSSL,而不是 PowerShell)。通过 quit
从 openssl
退出以返回 PowerShell。
Dot-sourcing 在这里没有提供任何好处,顺便说一句。您可以简单地 运行 .\openssl
得到相同的结果。
您还可以 运行 openssl
non-interactively 通过在命令行上提供子命令:
.\openssl version -a
示例:
dot sourcing openssl.exe 在其上下文中调用命令
. .\openssl.exe
OpenSSL> version -a
生成版本信息
如果我想用传统的 cls
清除屏幕,它将尝试在 OpenSSL.
如何从 previous/non-dot 源上下文中调用 cls
。除此之外,您甚至可以 "step back" 来自点采购吗?
我相信您最好在 non-interactive 模式下执行您的命令:. .\
openssl.exe version -a
。这将吐出版本信息,然后将您留在 shell 中。有些程序在交互模式下有命令调用 shell 命令(想到 MySQL ),但看起来 OpenSSL 不支持它。您可以退出交互模式并使用 quit
命令返回您的 shell。
您正在调用交互式 openssl
会话。在该会话中,您可以 运行 OpenSSL(子)命令,但不能使用 PowerShell cmdlet(因为环境现在是 OpenSSL,而不是 PowerShell)。通过 quit
从 openssl
退出以返回 PowerShell。
Dot-sourcing 在这里没有提供任何好处,顺便说一句。您可以简单地 运行 .\openssl
得到相同的结果。
您还可以 运行 openssl
non-interactively 通过在命令行上提供子命令:
.\openssl version -a