我的Windows服务器上有一个powershell脚本,它执行一些活动目录操作。我希望使用shell脚本从另一台Linux机器上调用该脚本。
我已经在我的Windows服务器上安装了Powershell服务器,可以使用 * 基于SSH身份验证的密钥 * 与我的Linux机器通信。
由于Windows本身不支持SSH连接,我在Windows服务器上安装了一个名为Powershell服务器(http://www.powershellserver.com/)的软件。
问题是,一旦执行了ssh到Windows服务器的命令,我的脚本就停止了。
我的shell脚本如下图:
#!/bin/bash
echo "script run"
GROUP=$1
ACCOUNT=$2
ssh Administrator@<Windowshostname>
sleep 10
echo "<pathtoscript>\scriptname.ps1 -group $GROUP -account $ACCOUNT"
sleep 5
echo "exit"
exit
我也试过不使用echo命令,但它仍然挂起。你知道我在这里做错了什么吗?我怎么才能让它工作呢?
2条答案
按热度按时间iszxjhcz1#
除非安装SSH守护程序,否则无法通过ssh进入Windows框。您有两种选择:
1-您需要通过Remote PowerShell(WINRM)进行连接。
2-安装SSH守护程序并通过SSH连接(检查here)
3-您也可以使用PowerShell Web Access(Windows服务器)。
更新:如果您正在使用PowerShellServer.com,那么您可以做一些事情来尝试了解更多信息。
4ioopgfo2#
使用“expect”脚本尝试了该操作,现在一切正常。