OSQL命令停止服务

时间:2017-10-17 12:21:17

标签: sql-server

我试图使用net stop来停止服务,它是通过数据库。 通过OSQL连接数据库并执行net stop命令来停止服务。

某些服务名称有空格,所以我需要用双引号括起服务名称,否则服务名称中的每个单词都被视为参数而不是名称。

如果我使用双引号,则OSQL命令无效。

请帮我解决这个问题。以下是示例查询。

osql -U mpsappuser -P password -S %servername% -d DBName -Q "execute xp_cmdshell 'net STOP "MPS AS2 Service"'"

1 个答案:

答案 0 :(得分:0)

以下查询将起作用

osql -U mpsappuser -P password -S %servername% -d DBname -Q "DECLARE @cmd VARCHAR(100) SELECT @CMD = 'net STOP ' + CHAR(34) + 'MPS AS2 Service' + CHAR(34) + '' execute xp_cmdshell @CMD"