在服务器上用crontab定时运行脚本,用的是 go run 命令,结果不执行
参考:
https://www.cnblogs.com/mysticbinary/p/13371189.html
http://www.nfangbian.com/go/cmd/gobuild.html
搜索了下发现go run
命令只适用于调试阶段,在服务器上跑的话要打包成二进制文件执行。
解决方案:
在项目目录下执行 go build
命令会生成以项目名为文件名的可执行文件,加参数 -o
可指定打包后的文件名,如下
go build -o apple
还有可能需要注意的是,要留意是否会有权限问题,如果不行就用 chmod 755 xxx
提权再执行看看。我使用的是root账户所以没问题。
之后在 crontab
中写直接执行文件即可。
贴个我的:
1 0 * * * cd /work/xxx && ./apple