java定时执行bat文件的cmd命令

需求:

实现Windows系统开机后,执行定时器任务,每分钟执行一次指定目录的文件上传下载操作,使我的电脑中工作目录文件和码云git服务器上面的文件保持同步一致

package com.kj.test;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

/**
 * Created by KJ on 2018/5/2.
 */
public class SyncWork {

    public void runbat(String batName) {
        try {
            Process process = Runtime.getRuntime().exec(batName);
            BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream()));
            try {
                String line = null;
                while ((line = in.readLine()) != null) {
                    //System.out.println("output: " + line);// 如果你不需要看输出,这行可以注销掉
                }
                process.waitFor();
            } catch (IOException ioe) {
                ioe.printStackTrace();
            } catch (InterruptedException e) {
                e.printStackTrace();
            } finally {
                try {
                    in.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        //System.out.println("执行cmd命令完毕");
    }

    public static void main(String[] args) {
        Timer timer = new Timer();
        timer.schedule(new TimerTask() {
            public void run() {
                // 把run方法里的内容换成你要执行的内容
                //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                //System.out.println("当前的系统时间为:" + sdf.format(new Date()));
                SyncWork test = new SyncWork();
                test.runbat("E:\\svn\\java\\baseline\\syncAll.bat");
            }
        }, 1000, 60000); //1秒后开始执行,1分钟执行一次
    }
}

注:git同步命令在下一篇博文给出

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值