批处理文件(bat)

简单的说,批处理的作用就是自动的连续执行多条命令 .编写bat处理文件可以使用记事本的方式:

常见批处理文件的命令:

echo 表示显示此命令后的字符

tiltle 设置窗口的标题。

echo off 表示在此语句后所有运行的命令都不显示命令行本身

color 设置窗体的字体颜色。

@与echo off相象,但它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能影响当前行)。

pause 运行此句会暂停批处理的执行并在屏幕上显示Press any key to continue...的提示,等待用户按任意键后继续

rem 表示此命令后的字符为解释行(注释),不执行,只是给自己今后参考用的(相当于程序中的注释) 或者%注释的内容%

%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串

批处理bat文件:可以一次执行多条命令的文件

为什么要学习什么bat文件

jar双击执行只是图形化界面的程序,对于控制台程序不起作用

对于控制台的程序的快速执行一般使用bat文件快速启动。

如何编写批处理bat文件?

步骤:创建一个自定义的文本文件,后缀名改为bat,把要执行的命令写入这个文件即可。

批处理问加你常用的命令

echo 想控制台输出制定的内容

echo off 该命令将会影藏该命令后面的所有的指令,只显示执行的结果。

@ 隐藏当前行的命令

title 改变当前控制台窗口的标题

color 改变制定控制台的背景色与前景色

%中间是注释的内容% 后面的内容表示bat文件中的注释内容,将不会再cmd窗口中现实,只是给编写者日后查看来用

pause 让当前命令台停留,知道执行press any key...

%1~%9 这表示给批处理文件传入参数的。这里的%1表示一个参数,一旦要传递参数,就必须在cmd下行

> run 传入的第一个参数

可以把这个Demo.java文件拷贝到一个文件夹中做下面的操作实验。

run.bat文件的编辑内容

javac -d . Demo1.java rem 说明一下这是前面没有看的javac的命令,这样编译的结果直接带有包结构

java it.cast.bat.Demo1 rem 运行编译好的.class文件

pause rem 这样可以是运行过的结果停留一会 直到按下 press any key

把编译好的具有包结构的clss文件夹 cn 打包成 test.zip压缩文件,然后删掉.java文件和才能文件夹(保护自己的源码).这个时候,可以回到到处dos下编写java文件并运行的情况

>set classpath = f:\test\test.zip; rem 设置classpath在本cmd命令窗口中有效,一旦退出,classpath将会恢复

>java it.cast.bat.Demo1

这个样子也能执行

下一种方法,是使用java命令的 =classpath参数,只设置本次执行java命令的时候有效

>java -classpath .\test\test.zip; it.cast.bat.Demo1  嗨嗨 提示一下哟 .表示当前目录  目录后面用了一一个分号; 这表示,在制定的文件夹test.zip中找不到的话,还会在当前的目录下 test中继续寻找

这样也能执行,于是便可以把上面的命令写到.bat文件中

于是现在的bat文件就变成了;

java -classpath .\test\test.zip; it.cast.bat.Demo1

pause

注意了上面的-classpath 参数不仅可以在.zip文件下面查找相关文件,也可以在.jar包中查找,但是不可以使用.rar文件

其实上面这是比较好的一种发布java文件的方法

Demo1.java的源码如下:

Package cn.cast.bat;

Class Demo1

{

Public static void main(String [] args)

{

System.out.println(“哈哈哈...”);

}

}

吧这个问价拷贝到一个文件夹下,在cmd中使用javac -d . Demo1.java打包产生一个cn为文件夹,然后我们就可以把cn这个文件夹打包成一个test.zip的压缩文件,然后,原来的.java文件和cn包文件夹就可以删掉了(来保护自己的源码).然后就是线面的bat文件:

Run.bat-------------------------------

@echo off

cls

%这是一种单行注释%

传值只能使用cmd运行 run 参数 即可%

color 74

echo 欢迎大家学习bat命令

java -classpath .\test.zip; cn.cast.bat.Demo1

Pause

以后打包运行一个java文件都可以使用上面的方法,这个时候是更加的简单,如果你的文件是现在eclipse中编写好的这个时候,就有完整的包文件,直接这个.class的把文件考别出来然后编写上面的文件就可以了。值得尝试的是,上面的做法在一个没有安装java虚拟环境的机器上能不能使用。

(30)批处理文件.bat的更多相关文章

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

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

  2. 使用批处理文件(*.bat)同时打多个cmd窗口

    使用批处理文件(*.bat)同时打多个cmd窗口 最近在研究zookeeper,在本地建了几个目录,发现频繁的去各个目录启动zkServer.cmd十分繁琐,于是乎google,才有了下文: 使用批处 ...

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

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

  4. 批处理文件 bat 后台运行

    当运行 批处理文件bat 时 , 会有一个黑窗口显示 , 对于不懂的人来说, 还是很吓人的;  有两种办法,可以让bat后台运行,不出现黑窗口   第一种解决办法(推荐) : 在你写的批处理文件,开头 ...

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

    本文教大家写一个批处理文件.bat删除旧文件,供大家参考,具体内容如下 1. 批处理文件 del_old_file.bat rem 删除D:\temp目录下7天前的文件Forfiles /p E:\b ...

  6. 批处理文件(.bat)并行Arcpy脚本提高效率的思路

    Arcpy提供数据处理的方便接口,但一个Arcpy脚本通常只运行于一个核上.现在电脑通常是多核乃至多处理器,如果能将任务分解为可同时进行的若干任务,便可通过并行充分利用电脑性能. 折腾了python并 ...

  7. Windows下批处理文件(.bat)的使用

    cmd文件和bat文件的区别:在本质上两者没有区别,都是简单的文本编码方式,都可以用记事本创建.编辑和查看.两者所用的命令行代码也是共用的,只是cmd文件中允许使用的命令要比bat文件多.cmd文件只 ...

  8. C# 执行批处理文件(*.bat)的方法代码

    代码如下: static void Main(string[] args){    Process proc = null;    try    {                        st ...

  9. C#: 执行批处理文件(*.bat)的方法

    static void Main(string[] args) { Process proc = null; try { proc = new Process(); proc.StartInfo.Fi ...

随机推荐

  1. Qt入门之基础篇(1):Qt4及Qt5的下载与安装

    转载请注明出处:CN_Simo. 导语: Qt是一个跨平台的C++图形界面应用程序框架.它提供给开发者建立图形用户界面所需的功能,广泛用于开发GUI程序,也可用于开发非GUI程序.Qt很容易扩展,并且 ...

  2. Linux Platform驱动模型(一)-设备信息

    我在Linux字符设备驱动框架一文中简单介绍了Linux字符设备编程模型,在那个模型中,只要应用程序open()了相应的设备文件,就可以使用ioctl通过驱动程序来控制我们的硬件,这种模型直观,但是从 ...

  3. Madifest文件详解

    介绍 Madifest是个XML的描述文件,对于每个DLL有DLL的Manifest文件,对于每个应用程序Application也有自己的Manifest.对于应用程序而言,Manifest可以是一个 ...

  4. 蓝桥网试题 java 入门训练 序列求和

    ---------------------------------------------------------------------------------------------------- ...

  5. 基于python的互联网软件测试开发(自动化测试)-全集合

    基于python的互联网软件测试开发(自动化测试)-全集合 1   关键字 为了便于搜索引擎收录本文,特别将本文的关键字给强调一下: python,互联网,自动化测试,测试开发,接口测试,服务测试,a ...

  6. JS 与 OC

    做项目需要从网页点击跳转到app的一个页面上,并且需要获取参数. 当时后台给写的参数是这样的.自己打开浏览器看的源码 JavaScript:window.location.href=   这句话在js ...

  7. My97DatePicker.js 之无效日期设置

    1.下载并引用My97DatePicker.js 2.将工作日休假的和周末上班的维护到数据库中 3.取出某段时间内的不上班日期集合 /// <summary> ///获取 无效日期集合 1 ...

  8. js获取浮动(float)元素的style.left值为空的解决办法

    解决办法: 1.使用行内样式设置元素的top和left值; 2.or直接获取元素的offsetLeft得到相关数值,还不需要parseInt 问题原因: 如果父div的position定义为relat ...

  9. MAC上配置asp.net core开发环境

    安装.NET Core sdk https://www.microsoft.com/net/core#macos 安装VS Code https://code.visualstudio.com/Dow ...

  10. Hibernate基本原理

    一.Hibernate是对JDBC进一步封装 原来没有使用Hiberante做持久层开发时,存在很多冗余,如:各种JDBC语句,connection的管理,所以出现了Hibernate把JDBC封装了 ...