K&

初学写的一个脚本,可以配合shell进行自动化使用。

 

这是目录结构

D:.
├─log
├─rmfile
└─script

 

rmfile放的是检查脚本日志文件如果存在就清空,每次运行重新生成日志用

log放的脚本运行日志

script就是shell相关脚本

 

 

源码

 

package rmfile

import (
    "fmt"
    "os"
    "os/exec"
)

func IsExitsfile() {
    _, err := os.Stat("D:\\go_code\\src\\shell\\log\\outfile.log")
    if err == nil {
        rmfile := exec.Command("D:\\go_code\\src\\shell\\script\\rmfile.bat")
        err := rmfile.Run()
        if err != nil {
            fmt.Println(err)
        }
    }
}





package main

import (
    "fmt"
    "os"
    "os/exec"
    "shell/rmfile"
)

func cmd(scriptpath string) {
    cmd := exec.Command(scriptpath)
    if output, err := cmd.CombinedOutput(); err == nil {
        rmfile.IsExitsfile()
        f, err := os.OpenFile("D:\\go_code\\src\\shell\\log\\outfile.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
        if err != nil {
            fmt.Println(err)
        }
        defer f.Close()
        f.Write(output)
    } else {
        fmt.Println(err)
    }
}

func main() {
    cmd("D:\\go_code\\src\\shell\\script\\check.bat")
}

 

 

cmd可以后期自己单独打个包放在里面,不然看着有点乱。

 

posted on 2021-11-09 10:37  K&  阅读(422)  评论(0编辑  收藏  举报