系统:win7

环境:需要配置好jdk的环境变量

需求:每次开机,用bat批处理执行将一个位于D:\workspace\console目录底下的console.txt重命名的java文件

拿到需求,我们可以分解:

  1:编写java操作文件类

  2:编写.bat执行java文件

  3:配置系统的计划任务

一、编写java操作文件类

  用java操作文件,这个比较简单,就不多阐述了,这里要注意的是,bat操作java文件时,不允许出现中文字符的注释

 import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date; public class CreateTomcatConsoleFile { public static void main(String[] args) {
// TODO Auto-generated method stub File oldfile = new File("D:\\workspace\\console\\console.txt");
if(oldfile.exists()&&oldfile.isFile()){
SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd_HHmmss");
String time = df.format(new Date());
File newfile = new File("D:\\workspace\\console\\console_"+time+".txt");
oldfile.renameTo(newfile);
}
} }

二、编写.bat执行java文件

  先创建一个普通的.txt文件,用记事本打开,输入我们要执行的操作,这里的操作,可以现在dos命令行里测试一遍,可以运行后粘贴到记事本里。

其中,%CLASSPATH%、%PATH%、%JAVA_HOME%要根据自己的环境变量来设置;我的java文件放在D:\taskplan\start目录底下,所以需要引导到该目录

最后执行java  CreateTomcatConsoleFile,当然在这之前你也可以先编译.java文件,如

  javac  CreateTomcatConsoleFile.java

  java  CreateTomcatConsoleFile

换行隔开,不用标点符号

@echo off
set CLASSPATH=%CLASSPATH%;
set PATH=%PATH%
set JAVA_HOME=%JAVA_HOME%
d:
cd D:\taskplan\start
java CreateTomcatConsoleFile
exit
@pause

文件都已经编写完了,我的目录是这样的

三、配置系统的计划任务

打开win7左下角的菜单栏,在搜索框内输入“任务计划”

打开任务计划后,在右边“操作”中找到“创建任务”

名称和描述随意输入,选择用户登录时运行,并且配置系统选择win7

切换选项卡到触发器,新建触发器,选择登录时,所有用户,然后确定

切换选项卡到“操作”,新建,操作选择启动程序,程序或者脚本填我们前面写好的.bat文件路径,然后确定

后面两个选项卡“条件”和“设置”是更加细粒度的条件设置,其中,在设置中,“允许按需允许任务”要打勾,方便测试,

其他的可以根据需求去设置,到这里已经满足我们的需求了,就不往下做了

到主面板就可以看到我们新增的计划了

注意:360或者安全管家记得放行,因为这些安全程序都提示拦截,记得放行,不要禁用

四、测试

找到右边的“所选项”,选择我们刚刚新增的任务,点击“运行”

至此,用系统的任务计划执行.bat文件操作java文件以及实现了

windows计划任务启动bat执行java文件的更多相关文章

  1. windows10计划任务启动bat执行jar打包的jar文件

    今天公司要用bat文件执行jar打包的java文件,运行没项目的程序,并且用任务计划开机自启,今天记录下坑 系统:win10 一.编写.bat执行用jar打包的jar文件 @echo off java ...

  2. 在WINDOWS任务计划程序下执行PHP文件 PHP定时功能的实现

    最近需要做一个定时任务功能,从网站找了很多相关的代码,windows实现方法综合起来大概就两种, 一.使用PHP ignore_user_abort 函数 即使关掉浏览器也能正常运行:(个人感觉PHP ...

  3. int.TryParse非预期执行引发的思考 ASP.NET -- WebForm -- 给图片添加水印标记 Windows -- 使用批处理文件.bat删除旧文件

    int.TryParse非预期执行引发的思考   问题出现 这天在写一个页面,想谨慎些就用了int.TryParse,结果出问题了. 代码如下: Copy int id = 1000; //Reque ...

  4. bat执行java程序的脚本解析

    使用java执行带Package的class文件java package1.package2.className  或java -cp .  package1.package2.className - ...

  5. Windows -- 使用批处理文件.bat删除旧文件

    Windows  --  写一个批处理文件.bat删除旧文件 1. 批处理文件 del_old_file.bat rem 删除D:\temp目录下7天前的文件 Forfiles /p D:\temp ...

  6. 使用bat执行java项目

    前提:java项目要有main方法 类似写法如下: set JAVA_HOME=C:\jdk1.6 set LIB_HOME=. set JAVA_JAR=. set JAVA_JAR=%JAVA_J ...

  7. dos界面下执行java文件将错误输出到一个文本小技巧

    如果dos下执行java出现错误,把错误记录到一个文档 正确时如图,输出结果为hello,我把String的s改为小写,出现错误,用2>命令输出到error.txt在当前目录就出现了error. ...

  8. 记一次使用cmd执行java文件遇到的坑...包括“使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题”

    今天写了一个java文件,类似聊天软件的东西.在eclipse里输入输出显得没感觉,于是乎就准备在cmd里输入和显示输出.如下图,我准备运行的是ChatDemo.class文件.路径是:D:\work ...

  9. Linux执行Java文件

    最近学习shell脚本,写个简单java类让linux去执行 java类没别的东西,就引了一个fastjson的jar,写了个main方法 序列化一个User对象 打印 package com.lws ...

随机推荐

  1. SQLI DUMB SERIES-16

    (1)无论怎么输入,都没有回显,但当输入 admin")#时,显示登录成功.若通过其他方法获取数据库的用户名,可通过这个方法登录成功. (2)获取其他信息可用考虑时间延迟注入.方法同15.

  2. C++报错

    编译的时候会报如下错误:warning: ISO C++11 does not allow conversion from string literal to 'char *' [-Wwritable ...

  3. django 分页组件

      一.仿django分页功能自己实现 urls.py 1 2 3 4 5 6 7 8 9 from django.conf.urls import url from django.contrib i ...

  4. hibernate的lazy初始化结果

    package com.ehcache; import java.io.Serializable; public class User implements Serializable{ private ...

  5. MFC程序打包方法

    目录 1. 新建工程 2. 设置信息 3. 其他设置 4. 生成安装包 1. 新建工程 在同一个解决方案下,新建一个Setup工程,工程名为SetupVSR. (1)在"解决方案资源管理器& ...

  6. 新手入门HTML5有什么推荐的书籍?

    很多想迈入HTML5开发行列的人,都会问一个问题:要成为一个更好的开发人员,我应该读哪些书?有哪些HTML5开发的书籍推荐吗? 有人说开卷有益,读万卷书行万里路;有人说,书不在多,精益求精;有人说,书 ...

  7. [随笔][Java][修改pom仓库库为阿里云]

    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave ...

  8. reset Cisco 2960 password

    详见:http://www.cahilig.net/2014/04/14/how-reset-cisco-2960-switch-password-without-losing-your-config ...

  9. C# 特性(Attribute)之Serializable特性

    转载自:https://www.cnblogs.com/GreenLeaves/p/6753261.html 介绍之前,先说一个重要的知识点: Serializable属性并不序列化类,它只是一个标签 ...

  10. MessageFormat.format 包含单引号引起的不可替换

    MessageFormat.format("region = '{0}'", "en");实际结果是region = {0}如果需要被替换的话,需要用双单引号 ...