golang web程序开机自动启动,并隐藏cmd窗口

如果一个服务器有10个golang的web,每一个都显示一个cmd窗口的话,会很难看,解决如下:

1)go build 你的web  生成一个exe文件

        例如 我的项目叫 "myweb",那么我需要在我的项目根目录上面打开cmd,执行一条命令就可以了: go build myweb   .就会生成一个myweb.exe文件


2)制作bat文件 通过bat文件启动该exe文件:

        新建一个空bat文件,把上一步生成的myweb.exe的绝对路径添加到bat文件中,这样双击bat文件就能启动myweb.exe文件了

        此时,会有一个cmd窗口弹出,很不好看,如果我们想让myweb.exe后台运行,只需要在bat文件最顶部加入以下代码:

[plain]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
  1. @echo off  
  2. if "%1" == "h" goto begin  
  3. mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit  
  4. :begin  
  5. REM  

       此时,bat文件的全部代码如下:

[plain]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
  1. @echo off  
  2. if "%1" == "h" goto begin  
  3. mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit  
  4. :begin  
  5. REM  
  6.   
  7. C:\GOPATH\src\myweb\myweb.exe  

3)开机自动运行bat文件:

         方法1:修改注册表法:

                   开始-运行-输入“regedit”(不包括引号)-找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run项目,在其右侧窗口右击,选择新建字符串值,双击新建字符串值,在数值数据中输入你需要启动的程序路径,注意在整个路径上加上引号,即是:“C:\GOPATH\src\myweb\myweb.exe

        方法2:.vbs脚本启动法
                   此时我们需要建一个.vbs脚本来后台执行该脚本,脚本内容为:

  1. set ws=WScript.CreateObject("WScript.Shell")   
  2. ws.Run "C:\abc\script.bat /start",0   
然后将该文件保存为script.vbs,放入“开始 --> 所有程序 --> 启动”内即可。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CentOS 8 是一种功能强大的操作系统,可为企业和个人提供高效的计算资源管理和分配。如果您想在 Centos 8 上运行 Golang 程序并让它在开机自动启动,可以按照以下步骤进行设置: 1. 编写 Golang 程序并确保其可执行。在我们的例子中,我们将假设我们编写了一个名为 `hello-world` 的程序,并将其编译为二进制文件。 2. 创建一个服务文件。您可以使用 `systemd` 来创建一个服务文件,以便在启动自动运行程序。在命令行中运行以下命令以打开 `systemd` 编辑器并创建一个新文件: ``` sudo systemctl edit --force --full my-service.service ``` 在此命令中,`my-service` 是你的服务名称。如果你想使用不同的名称,请替换 `my-service`。 3. 在编辑器中,输入以下内容: ``` [Unit] Description=My Golang Service [Service] ExecStart=/path/to/hello-world Restart=always [Install] WantedBy=multi-user.target ``` 在此文本中,`My Golang Service` 是服务的描述信息。`/path/to/hello-world` 是您二进制文件的路径。`Restart=always` 表示如果程序意外停止,它将自动重新启动。 接下来,选择 `Ctrl + W` 以写入文件并选择 `Ctrl + X` 以关闭编辑器。 4. 启动服务。输入以下命令以启动您的服务: ``` sudo systemctl start my-service ``` 确保您使用了正确的服务名称。 现在,您已经成功地在 Centos 8 上设置了 Golang 程序开机自启动。如果您想禁用服务或将其从开机启动列表中移除,请使用以下命令: ``` sudo systemctl stop my-service sudo systemctl disable my-service ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值