我正在尝试从命令提示符安装服务'ServiceName',其中包含参数值,我将通过powershell作为用户输入表单。
$server = $return[0]
Invoke-Expression -Command "cmd.exe /c ServiceName --install --server=$server"
ServiceName服务基本上在安装时从服务器变量中获取参数值。我不确定这是否是在cmd.exe中使用powershell变量值的正确方法。 cmd.exe可以采用上面显示的方式获取服务器变量值吗?
答案 0 :(得分:0)
您可以在Powershell中添加新服务,而不必使用cmd:
+------------+--------------+------+-----+-------------------+-----------------------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+-------------------+-----------------------------+
| timestamp | timestamp | NO | | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP |
+------------+--------------+------+-----+-------------------+-----------------------------+
您也可以使用
$serviceName= Read-Host("Enter service name")
$mycreds = Get-Credential
$binaryPath = Read-Host("Enter service executable path")
New-Service -name $serviceName -binaryPathName $binaryPath -displayName $serviceName -startupType Automatic -credential $mycreds
如果要将其他参数传递给命令。或者如果你想要,你可以从一个输入解析,但它更麻烦。