1.直接上代码updater.go:
package main
import (
"log"
"os"
"io"
"archive/zip"
"path/filepath"
"os/exec"
"flag"
"time"
)
func Unzip(zipFile string, destDir string) error {
zipReader, err := zip.OpenReader(zipFile)
if err != nil {
log.Println("openerr:" + err.Error())
return err
}
defer zipReader.Close()
for _, f := range zipReader.File {
fpath := filepath.Join(destDir, f.Name)
if f.FileInfo().IsDir() {
os.MkdirAll(fpath, os.ModePerm)
} else {
if err = os.MkdirAll(filepath.Dir(fpath), os.ModePerm); err != nil {
log.Println("mkdirerr:"+err.Error()