(30)批处理文件.bat
批处理文件(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的更多相关文章
- int.TryParse非预期执行引发的思考 ASP.NET -- WebForm -- 给图片添加水印标记 Windows -- 使用批处理文件.bat删除旧文件
int.TryParse非预期执行引发的思考 问题出现 这天在写一个页面,想谨慎些就用了int.TryParse,结果出问题了. 代码如下: Copy int id = 1000; //Reque ...
- 使用批处理文件(*.bat)同时打多个cmd窗口
使用批处理文件(*.bat)同时打多个cmd窗口 最近在研究zookeeper,在本地建了几个目录,发现频繁的去各个目录启动zkServer.cmd十分繁琐,于是乎google,才有了下文: 使用批处 ...
- Windows -- 使用批处理文件.bat删除旧文件
Windows -- 写一个批处理文件.bat删除旧文件 1. 批处理文件 del_old_file.bat rem 删除D:\temp目录下7天前的文件 Forfiles /p D:\temp ...
- 批处理文件 bat 后台运行
当运行 批处理文件bat 时 , 会有一个黑窗口显示 , 对于不懂的人来说, 还是很吓人的; 有两种办法,可以让bat后台运行,不出现黑窗口 第一种解决办法(推荐) : 在你写的批处理文件,开头 ...
- Windows下使用批处理文件.bat删除旧文件
本文教大家写一个批处理文件.bat删除旧文件,供大家参考,具体内容如下 1. 批处理文件 del_old_file.bat rem 删除D:\temp目录下7天前的文件Forfiles /p E:\b ...
- 批处理文件(.bat)并行Arcpy脚本提高效率的思路
Arcpy提供数据处理的方便接口,但一个Arcpy脚本通常只运行于一个核上.现在电脑通常是多核乃至多处理器,如果能将任务分解为可同时进行的若干任务,便可通过并行充分利用电脑性能. 折腾了python并 ...
- Windows下批处理文件(.bat)的使用
cmd文件和bat文件的区别:在本质上两者没有区别,都是简单的文本编码方式,都可以用记事本创建.编辑和查看.两者所用的命令行代码也是共用的,只是cmd文件中允许使用的命令要比bat文件多.cmd文件只 ...
- C# 执行批处理文件(*.bat)的方法代码
代码如下: static void Main(string[] args){ Process proc = null; try { st ...
- C#: 执行批处理文件(*.bat)的方法
static void Main(string[] args) { Process proc = null; try { proc = new Process(); proc.StartInfo.Fi ...
随机推荐
- java连接ms sql server各类问题解析
首先先来说下使用微软自己开发的架包进行ms sql server数据库的连接时,sql 2000与sql 2005的连接方式略有不同: 1.首先驱动不一样,sql 2000的连接驱动包有三个,分别是: ...
- iOS开发tips-UITableView、UICollectionView行高/尺寸自适应
UITableView 我们都知道UITableView从iOS 8开始实现行高的自适应相对比较简单,首先必须设置estimatedRowHeight给出预估高度,设置rowHeight为UITabl ...
- swift2.0 字符串,数组,字典学习代码
swift 2.0 改变了一些地方,让swift变得更加完善,这里是一些最基本的初学者的代码,里面涉及到swift学习的最基本的字符串,数组,字典和相关的操作.好了直接看代码吧. class View ...
- matlab for循环的三种类型
学习了一半了,发现一个好网站,就是我想写这篇博客用的,网络真是个好东西!纪念下国庆啦 网址:http://www.yiibai.com/matlab/matlab_for_loop.html ---- ...
- tomcat启动异常、和web.xml缺少配置异常
错误如下: 14-Feb-2017 10:50:00.665 SEVERE [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.core.Sta ...
- 关于OpenGL和DX学习的取舍
大家多知道左右就肯定要与显卡打交道.两大图形图像IPA.OpenGL(图形),DX(图形,声音,键盘控制,网络) OpenGL的兴起可能取决于苹果公司的适用,吸引看大部分开发者适用,它有跨平台的有点. ...
- WP8.1应用双击返回键退出程序。
#region 双击退出程序代码 //双击HardwareButtons.BackPressed: //出现退出提示窗口: //“确定”退出,“取消”返回什么也不做: private async vo ...
- Tinyshell: 一个简易的shell命令解释器
这是自己最近学习Linux系统编程之后写的一个练手的小程序,能很好地复习系统编程中的进程管理.信号.管道.文件等内容. 通过回顾写的过程中遇到的问题的形式记录程序的关键点,最后给出完整程序代码. 0. ...
- STM32F4时钟配置分析
//学习STM32F4的过程中关于时钟上面讲的比较好 特地转发与大家分享 STM32F4时钟设置分析 原文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环 ...
- HTTP严格安全传输(HTTP Strict Transport Security, HSTS)chromuim实现源码分析(二)
HTTP严格安全传输(HTTP Strict Transport Security, HSTS)chromuim实现源码分析(一) 下面来查看其他对保存HSTS信息的enabled_sts_hosts ...