ubuntu20 安装Go/go go定时任务
安装 Go
- 
使用官方包管理器安装(版本可能不是最新):
查看版本:
apt list golang // 是1.13版本(太老了),直接从官网下载
sudo apt update sudo apt install -y golang - 
从官方网站下载安装(推荐,获取最新版本):
wget https://golang.org/dl/go1.22.2.linux-amd64.tar.gz sudo tar -C /usr/local -xzf go1.22.2.linux-amd64.tar.gz请根据 Go 最新版本修改下载链接。
 - 
配置环境变量:
在
~/.bashrc或~/.profile中添加以下内容:export PATH=$PATH:/usr/local/go/bin export GOPATH=$HOME/go export PATH=$PATH:$GOPATH/bin然后执行:
source ~/.bashrc - 
检查安装是否成功:
go version如果安装成功,会输出 Go 版本信息,例如:

 
使用cron执行xx.go
hello.go
package main
import (
	"fmt"
	"log"
	"os"
)
func logs() {
	// 打开文件,如果不存在就创建
	file, err := os.OpenFile("app.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0644)
	if err != nil {
		log.Fatal(err)
	}
	// 设置日志输出到文件
	log.SetOutput(file)
	log.Println("这是一条普通的日志")
	defer file.Close()
}
func main() {
	fmt.Println("开始了")
	logs()
}
如果 Go 程序依赖某些环境变量(如 GOROOT 或 PATH),需要显式设置这些变量。
在 crontab 文件顶部添加如下 (一定添加,否则不执行)
# go程序测试
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/go/bin
GOPATH=/root/go
GOROOT=/usr/local/go
00 20 * * * root su - root -c "cd /root/go && /usr/local/go/bin/go run /root/go/hello.go"
02 20 * * * root su - root -c "cd /root/go && /usr/local/go/bin/go run /root/go/hello.go"
03 20 * * * root su - root -c "cd /root/go && /usr/local/go/bin/go run /root/go/hello.go"
eg :

本文来自博客园,作者:__username,转载请注明原文链接:https://www.cnblogs.com/code3/p/18597894
                    
                
                
            
        
浙公网安备 33010602011771号