在 Windows 上使用 ActiveState perl 5.8。我将结果sc qc MyServiceName
放入变量中。
$MSSQLResults=`sc qc $MSSQLServiceName`;
print "MSSQLResults $MSSQLResults";
如果我将变量打印到 STDOUT,我会得到如下信息:
[SC] QueryServiceConfig SUCCESS
SERVICE_NAME: MSSQL$INSTANCE1
TYPE : 10 WIN32_OWN_PROCESS
START_TYPE : 3 DEMAND_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME : "C:\Program Files\Microsoft SQL Server\MSSQL10_50.INSTANCE1\MSSQL\Binn\sqlservr.exe" -sINSTANCE1
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : SQL Server (INSTANCE1)
DEPENDENCIES :
SERVICE_START_NAME : TESTLAB\svc_SQLServer
我想从 grep 或正则表达式匹配返回的字符串是TESTLAB\svc_SQLServer
. 我应该使用 grep、正则表达式还是其他什么?perl 的哪一行可以完成我想要的?文本TESTLAB\svc_SQLServer
将根据我在哪台机器上运行而有所不同。