Windows 系统下有没有类似于 systemctl 的服务管理程序

2022-07-28 08:48:51 +08:00
 chensong004
在 windows 系统内安装了一些服务,有些是控制台程序,有些是 node 程序,这些服务需要开机自启并且常驻后台。现在是在开机启动项设置了一个脚本,任务栏还堆满了一堆黑框框(终端的图标)。有没有类似于 linux 那样的服务管理程序,可以比较简单的设置服务,windows 自带的 sc 命令创建的服务好像都是在 system32 目录运行的,导致配置文件不能加载。
3470 次点击
所在节点    问与答
21 条回复
hackxing
2022-07-28 08:52:02 +08:00
Windows 的任务计划程序,可以试试
holmesabc
2022-07-28 08:55:42 +08:00
SenLief
2022-07-28 08:57:20 +08:00
luzemin
2022-07-28 08:59:41 +08:00
windows task scheduler
foolnius
2022-07-28 09:08:33 +08:00
Node 可以考虑用 PM2
renmu123
2022-07-28 09:10:53 +08:00
计划任务,可以把黑框隐藏
wowo243
2022-07-28 09:15:08 +08:00
计划任务
Windows+R
taskschd.msc
Rache1
2022-07-28 09:17:13 +08:00
winsw ,可以把这些包装成 Windows 服务

https://github.com/winsw/winsw
bellchu
2022-07-28 09:22:12 +08:00
Microsoft.PowerShell.Management
bearice
2022-07-28 09:29:15 +08:00
zcf0508
2022-07-28 09:31:52 +08:00
me221
2022-07-28 10:21:56 +08:00
@bellchu
输入命令好像不能自动打开`用户账户控制`的页面, 而直接报错了.

再启动一个管理员的 ps 好像也不比打开服务面板简单....
me221
2022-07-28 10:25:25 +08:00
我是用 winsw 先将应用注册成服务. 然后使用 PowerToys Run 的服务 plugin 来控制服务的开启停止重启.
itning
2022-07-28 10:37:19 +08:00
nssm
Davic1
2022-07-28 11:33:51 +08:00
net start/stop xxx?
fisherwei
2022-07-28 11:43:43 +08:00
计划任务对应 crontab
services.msc 才是 systemctl ,可以用 nssm 创建自己的 service
Chancel
2022-07-28 12:22:15 +08:00
nssm
adoal
2022-07-28 12:33:32 +08:00
有没有可能 OP 不知道 Windows 的服务可以指定用什么用户来运行。以及即使在 Linux 下老运维们通常的最佳实践也不建议用交互登录的用户身份运行服务,而是用专用帐号,配置文件从绝对路径而非当前路径加载。
root01
2022-07-29 10:15:09 +08:00
srvany.exe+srvanyui.exe 用这 2 个,我把 frpc 做成服务,真香。srvanyui 是 gui 界面操作简单
bellchu
2022-07-30 21:43:12 +08:00
@me221

你如果只是要开机启动脚本而不是任务管理,那简单的创建任务就行了。GUI 也可以创建。
以下命令可以压缩为一条。

$Trigger = New-ScheduledTaskTrigger -AtStartup
$User = "Domain\User"
$PS = New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "-ExecutionPolicy Bypass -File C:\scripts.ps1"
Register-ScheduledTask -TaskName "Startup Run 001" -Trigger $Trigger -User $User -Action $PS

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/869138

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX