从 sqlserver 向 windows 机器发出终端命令
issue a terminal command from an sqlserver to a windows machine
我有一个 sqlserver,比如服务器 A,还有一个 windows 机器,比如机器 A。
我在 machineA 中有一个测试运行.bat 文件,我需要在 serverA 中完成某个进程后运行。
我了解到我可以使用 PSExec 从服务器 A 向机器 A 发出终端命令。
我只是想知道是否可以使用 Microsoft Telnet 服务来完成此操作?因为出于某些安全考虑,我不确定是否允许在服务器 A 中安装 PSExec。
基本上,我只是在寻找 B 计划,以防无法使用 PSExec。我意识到我可以使用的另一种方法是 Microsoft telnet,但我不确定它是如何实现的,甚至不确定它是否可行。
其他详细信息:
- serverA 运行s Windows 服务器 2012
- 机器 A 运行s Windows 7 企业
只需使用本机 wmic
命令。
wmic /user:<username> /password:<password> /node:<machine> process call create "cmd /c c:\somewhere\myBatchFile.cmd"
记住
由于进程是在远程机器上创建的,批处理文件必须存在于其中并且路径必须反映远程机器中的位置
进程在指定用户下启动,可能在单独的会话中。您可能看不到批处理文件 运行,请检查进程列表
如果批处理文件的路径包含空格,您需要将其引用为
wmic ... call create "cmd /c \"c:\some where\My Batch.cmd\""
我有一个 sqlserver,比如服务器 A,还有一个 windows 机器,比如机器 A。
我在 machineA 中有一个测试运行.bat 文件,我需要在 serverA 中完成某个进程后运行。
我了解到我可以使用 PSExec 从服务器 A 向机器 A 发出终端命令。
我只是想知道是否可以使用 Microsoft Telnet 服务来完成此操作?因为出于某些安全考虑,我不确定是否允许在服务器 A 中安装 PSExec。
基本上,我只是在寻找 B 计划,以防无法使用 PSExec。我意识到我可以使用的另一种方法是 Microsoft telnet,但我不确定它是如何实现的,甚至不确定它是否可行。
其他详细信息:
- serverA 运行s Windows 服务器 2012
- 机器 A 运行s Windows 7 企业
只需使用本机 wmic
命令。
wmic /user:<username> /password:<password> /node:<machine> process call create "cmd /c c:\somewhere\myBatchFile.cmd"
记住
由于进程是在远程机器上创建的,批处理文件必须存在于其中并且路径必须反映远程机器中的位置
进程在指定用户下启动,可能在单独的会话中。您可能看不到批处理文件 运行,请检查进程列表
如果批处理文件的路径包含空格,您需要将其引用为
wmic ... call create "cmd /c \"c:\some where\My Batch.cmd\""