dos批量java命令,dos之批处理命令学习及常用批处理

批处理

参考文章

概述

批处理脚本,故名思意,就是可以批量处理事务,有着跟程序语言相似的语法,可以称之为简化版的脚本语言,不同的系统有不同的批处理语法,脚本文件后缀名也不相同。

回显:常常指程序开发中执行命令的结果,就是返回的显示,你输入一个命令,然后给你返回一个值,显示在屏幕上。

windows batch(.bat文件)

概述

针对windows系统语法进行说明

如何创建批处理文件

直接在txt文件中写入命令,并修改txt文件后缀为bat,以下为示例内容, ::是注释符号

ping www.baidu.com

pause ::暂停,使用这个处理完不会立即关闭窗口

6d0c5cda5d8e

image.png

重要说明

文件及目录路径:要使用反斜杠'',不要使用正斜杠'/' 如:del d:\test2\file\my.txt

文件及目录路径:若存在空格,应使用双引号将路径引起来 如:del "d:\program files\file\my.txt"

文件及目录名中不能包含下列任何字符:\ / : * ? " < > |

命令大全

echo

打印字符串

echo off关闭回显

不使用echo off的界面

D:\反编译>set /a p=dir *.*

找不到操作数。

D:\反编译>echo

ECHO 处于打开状态。

D:\反编译>pause ::暂停,使用这个处理完不会立即关闭窗口

请按任意键继续. . .

使用了echo off关闭回显的界面

D:\反编译>echo off

找不到操作数。

ECHO 处于关闭状态。

请按任意键继续. . .

说白了,就是隐藏命令,只显示输出

@echo off 和echo off区别

echo off 是隐藏命令,但是执行完当前语句,才会生效,所以@的作用,就是从当前命令就开始生效,以下是使用了@echo off的界面

找不到操作数。

ECHO 处于关闭状态。

请按任意键继续. . .

%引用变量

单% 引用变量

单个%紧跟0-9的一个数字表示引用命令行参数;

双 %% 引用环境变量;转义

echo %cd% ::引用cd变量

echo %% rem 转义为一个%字符

echo

/p (获取用户的输入)

set /p p=你输入一下 ::将用户的输入赋值给一个变量p

echo %p%

/a 完成计算表达式

set /a cal=1+3

echo %cal%

/b 只显示文件名和目录

/b表示使用空格式,即只显示文件名与目录名,不显示文件的其他信息及dir命令本身应显示的所有信息。

dir /b *.*

不使用/b

驱动器 D 中的卷没有标签。

卷的序列号是 0001-2FAA

D:\反编译 的目录

2018/02/28 23:07

2018/02/28 23:07

2018/02/28 17:22 1,565,730 cfr_0_125.jar

2018/02/28 23:08

2018/02/28 17:44 64 start.bat

2018/02/28 23:36 69 test2.bat

3 个文件 1,565,863 字节

3 个目录 84,294,803,456 可用字节

使用/b

cfr_0_125.jar

class

start.bat

test2.bat

请按任意键继续. . .

%cd% 与%~dp0区别

%cd%是获取当前进入的工作目录

%~dp0获取当前bat文件的位置

@echo off

echo %%cd%%与%%~dp0区别

echo --------------------

echo 工作目录未发生变化

echo %%cd%% %cd%

echo %%~dp0 %~dp0

echo --------------------

echo 工作目录进入以c盘后 cd /d C:\Windows

echo %%cd%% %cd%

echo %%~dp0 %~dp0

echo --------------------

pause>nul

6d0c5cda5d8e

image.png

for循环

命令格式:

FOR %variable IN (set) DO command [command-parameters]

skip=跳过行

tokens=和delims的用法如下

示例:

假设a.txt某一行的内容是 111,222.333 444/555

for /f "tokens=1-5 delims=,./ " %%a in (a.txt) do echo %%a %%b %%c %%d %%e

pause

显示结果是 111 222 333 444 555

解释:

tokens=1-5 获取行上内容,获取1-5行

%%a %%b %%c %%d %%e分别代表tokens获取的1-5行

delims=,./ 以“,./”,只要带有这个其中之一的符号,就分割为一行

tokens=1,5* 获取1行,5行,*为后面内容,所以总共有三个参数

|与||与&与&&与^

| 前面命令输出结果作为后面命令的输入内容

|| 前面命令执行失败的时候才执行后面的命令

& 前面命令执行后接着执行后面的命令

&& 前面命令执行成功了才执行后面的命令

^ 转义字符

示例:

echo %str% | findstr /i "\\\\" >nul && goto loop

date与time

echo %date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%

rem 输出201805231430

公式化:~[开始的下标],[偏移量],例如%date:~0,4%从下标0开始截取,截取4个偏移量,也可以说是4个字符

unix/linux shell(.sh文件)

常用批处理

批量复制文件到指定目录

@echo off

rem 将用户的输入赋值给一个变量p

set /p inputDir=请输入需要复制的路径

set /p outputDir=请输入复制的输出路径

for /f "tokens=*" %%a in ('dir /s/b/a-d %inputDir%') do (

rem echo "%%~xa"

if "%%~xa" equ ".pdf" (

echo 准备复制的文件 %%a

rem java -jar cfr_0_125.jar %%a --outputdir %outputDir%

copy "%%a" "%outputDir%"

)

)

pause

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值