我有一个安装了SQL Server2012的(相当干净的) Windows Server2008 R2版本。我在使用PowerShell (版本3)时遇到了问题。
我正在尝试使用Invoke-Sqlcmd cmdlet。但是,当我调用get it时,我收到一条消息,指出'Invoke-Sqlcmd‘未被识别为cmdlet、函数、脚本文件或可操作程序的名称。
如果我运行导入模块SqlPs -Verbose -Force (绕过安全策略),它就可以工作。但是,这只会持续到选项卡打开的时间。如果我打开一个新选项卡,尝试运行另一个脚本或重新打开Powershell ISE,我必须重新导入模块。
你知道为什么会发生这种情况吗?
发布于 2016-02-20 02:57:37
这在很大程度上是一种变通方法,但你可以将其添加到你的个人资料中。
"'Import-Module SqlPs -Verbose -Force'" > $profile
显然,如果你之前有一个配置文件,你不想这样做,而是打开它,并通过记事本或类似的方式添加它。
还请注意,Powershell和PowershellISE具有不同的配置文件,因此如果您混合使用,则需要将其添加到两者中。
发布于 2016-02-20 00:54:38
据我所知,模块加载是基于每个会话完成的。所以你所看到的行为是你所期望的。
https://stackoverflow.com/questions/35502107
复制相似问题