我正在尝试创建一个正在创建文件并为其编写一些字符串的CronJob。当代码正常运行时,代码可以正常工作。此外,代码本身在作为Cronjob运行时执行(我检查/ var / log / syslog并使用“fmt.Print(”some string“)打印一些东西) 问题是我执行Cronjob时不会创建我要创建的文件(我是我的服务器上的根,所以“crontab -e”应该有足够的权限不应该吗?)
代码:
package main
import (
"os"
"path/filepath"
"fmt"
"github.com/Sirupsen/logrus"
)
func main() {
absPath, err := filepath.Abs("loggy.txt")
if err != nil {
fmt.Print("Error\n")
}
file, err := os.OpenFile(absPath, os.O_RDWR | os.O_CREATE | os.O_APPEND, 0666)
if err != nil {
fmt.Print("Error\n")
}
var loggy logrus.Logger
loggy.Out = file
loggy.Level = logrus.DebugLevel
formatter := &logrus.TextFormatter{}
formatter.ForceColors = true
formatter.FullTimestamp = true
loggy.Formatter = formatter
loggy.Warn("Test")
}
crontab -e:
*/01 * * * * /root/PathToFile/CronJob/./CronJob
感谢任何帮助
答案 0 :(得分:0)
因此,当在Cronjob中执行时,将当前目录调整到crontab目录,或者反过来