package main import ( "dsData/Utils/ConfigUtil" "dsData/Utils/SftpUtil" "dsData/Utils/SshUtil" "io/ioutil" "log" ) func main() { //声明远端SSH管理器 cli := SshUtil.New(ConfigUtil.DistributeIp, ConfigUtil.DistributeUser, ConfigUtil.DistributePwd,int(ConfigUtil.DistributePort)) //杀掉进程 cli.Run("mkdir /usr/local/dsMin/dsData -p") cli.Run("ps -ef |grep dsData |awk '{print $2}'|xargs kill -9") //sftp上传文件及文件夹 sftpClient, err := SftpUtil.Connect(ConfigUtil.DistributeUser, ConfigUtil.DistributePwd, ConfigUtil.DistributeIp,int(ConfigUtil.DistributePort)) if err != nil { log.Fatal(err) } defer sftpClient.Close() _, errStat := sftpClient.Stat(ConfigUtil.DistributeRemotePath) if errStat != nil { log.Fatal(ConfigUtil.DistributeRemotePath + " remote path not exists!") } _, err = ioutil.ReadDir(ConfigUtil.DistributeLocalPath) if err != nil { log.Fatal(ConfigUtil.DistributeLocalPath + " local path not exists!") } SftpUtil.UploadDirectory(sftpClient, ConfigUtil.DistributeLocalPath, ConfigUtil.DistributeRemotePath) //执行SSH命令行,授权 cli.Run("chmod +x /usr/local/dsMin/dsData/dsData") cli.Run("chmod +x /usr/local/dsMin/dsData/start.sh") cli.Run("chmod +x /usr/local/dsMin/dsData/debug.sh") cli.Run("chmod +x /usr/local/dsMin/dsData/stop.sh") //启动 cli.Run("cd /usr/local/dsMin/dsData && ./start.sh") log.Println("恭喜,数据共享服务上传并启动成功!") }