比较符号(不能用 < , >)

The reason operators like > are not used is because they have special meanings in shell scripts. The > is used to redirect output; < used to redirect input, etc.

Operator | Description
EQU | equal to
NEQ | not equal to
LSS | less than
LEQ | less than or equal to
GTR | greater than
GEQ | greater than or equal to

%* 命令

Key point:

  • It means "all the parameters in the command line".
  • %* expands to all parameters from the command line, even after a SHIFT operation. Normally a SHIFT will move parameter %2 to %1%3 to %2, etc., and %1 is no longer available. But %* ignores any SHIFT, so the complete parameter list is always available. This can be both a blessing and a curse.

Usage:

  • it's useful when you want to forward the command line from your batch file to another program

Shift 命令

shift command shifts the position of arguments one to the left. Running shift once in a batch file will make "%1" value to be the second argument, "%2" becomes the third, and so on. It's useful for processing command line arguments in a loop in the batch file.

Attention:

  • Shift doesn't change the actual order, just the index/pointer into the arguments.
  • It doesn't affect %*

Command like:

c:/>batchName.bat a b c d

batName.bat content:

@echo off
echo %
shift
echo %
shift
echo %
echo %*

And you get this:

a
b
c
a b c d

%0、%1等是表示什么

%0 指批处理本身。

%1 指批处理文件名后加的以空格分隔的字符串。

%2~%9类推

比如说

D盘根目录下有aa.txt,bb.txt,cc.txt三个文本和一个名batName.bat的批处理,批处理内容是

@echo off

start %1

start %3

打开CMD定位到D盘

D:\>batName     aa.txt    bb.txt    cc.txt

对应:       %0            %1       %2        %3

就会打开aa.txt(它是第一个参数即%1)和cc.txt(它是第三个参数即%3),而不会打开bb.txt,因为批处理的命令里没有start %2(bb.txt排第二所以是第二个参数)

%2 与 %~2 的区别

%2 substitutes in the second argument. %~2 substitutes the second argumenty but removes any quote marks:

C:\Temp>type t.cmd
@echo off
echo %%2 is: %2
echo %%~2 is: %~2 C:\Temp>t.cmd first second third
%2 is: second
%~2 is: second C:\Temp>t.cmd first "second third"
%2 is: "second third"
%~2 is: second third

echo off和echo on的作用

先写一个批处理文件,命令很简单,只是打印语句,如下:

rem 我把"执行echo off"和"执行echo on"也打印出来了,对了,前面的 rem 相当于java注释中的//
echo 第一句
echo 第二句
echo 第三句
echo off
echo 执行echo off后
echo 第一句
echo 第二句
echo 第三句
echo on
echo 执行echo on后
echo 第一句
echo 第二句
echo 第三句

然后是运行结果,图中有说明:

执行”echo off”,后面所执行的命令不会显示出来,只会显示结果.

但”echo off”本身的命令会显示出来怎么办,所以一般见到的echo off 前面都有”@”,”@”作用是此行所有的命令都不显示,只执行,和”echo off”比较相似,不过只对当前行起作用

————————————————

版权声明:本文为CSDN博主「S_clifftop」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/S_clifftop/article/details/78632313

版权声明:本文为CSDN博主「rainbow702」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/rainbow702/article/details/50516739

Batch - Windows Batch 常用命令的更多相关文章

  1. Windows运行常用命令(win+R)

    Windows运行常用命令(win+R) 1.calc: 启动计算器 2.notepad: 打开记事本 3.write: 写字板 4.mspaint: 画图板 5.snippingtool:截图工具, ...

  2. windows CMD常用命令

    命令简介 cmd是command的缩写.即命令行 . 虽然随着计算机产业的发展,Windows 操作系统的应用越来越广泛,DOS 面临着被淘汰的命运,但是因为它运行安全.稳定,有的用户还在使用,所以一 ...

  3. Windows CMD常用命令大全 运行命令

    http://blog.163.com/lixunhuan@126/blog/static/122060620075124142658/ CMD命令大全 net use \\ip\ipc$ " ...

  4. Windows&Linux常用命令笔记

    目录 linux windows Linux: 1.查找文件 find / -name filename.txt 根据名称查找/目录下的filename.txt文件. find . -name &qu ...

  5. windows系统常用命令

    dir 指定要列出的驱动器,显示当前文件夹下的文件   /?可显示所有命令 显示当前路径下的所有文件的绝对路径,包含子文件夹中的内容 D:\test > dir /b /s /o:n /a:a  ...

  6. Batch - windows batch 常用命令(cheat sheet)

    原文地址:https://www.oschina.net/code/snippet_158297_4964 1 echo 和 @ 回显命令 @ #关闭单行回显 echo off #从下一行开始关闭回显 ...

  7. 《自拍教程13》Windows的常用命令

    这些是Windows系统自带的常用DOS命令集合, 先大概了解下,当然如果能熟练掌握那最好了. 后续思维篇,思维篇还会结合不通的测试场景, 届时将列出这些命令更详细的使用描述. table.dataf ...

  8. Windows CMD常用命令集合

    CMD命令: 开始->运行->键入cmd或command(在命令行里可以看到系统版本.文件系统版本) chcp 修改默认字符集chcp 936默认中文chcp 65001 1. appwi ...

  9. 【原】Windows下常用命令

    1.小技巧 打开"运行"对话框(Win+R),输入cmd,打开控制台命令窗口... 也可以通过cmd /c 命令 和 cmd /k 命令的方式来直接运行命令 注:/c表示执行完命令 ...

随机推荐

  1. tzselect - 选择一个时区

    总览 tzselect 描述 tzselect 程序向用户询问当前位置的信息,把时区描述作为结果输出到标准输出.此结果适合作为环境变量 TZ 的值. 所有与用户的交互是通过标准输入和标准错误输出完成的 ...

  2. vt-is-UTF8 - check whether current VT is in UTF8- or byte-mode. 检查当前VT是否处于VTF8模式或是字节模式.

    总览 vt-is-UTF8 [-h|--help] [-V|--version] [-q|--quiet] 描述 vt-is-UTF8 checks whether the current VT is ...

  3. 格式化抽象本地地址(实战linux socket编程)

    格式化抽象本地地址传统AF_UNIX套接口名字的麻烦之一就在于总是调用文件系统对象.这不是必须的,而且也不方便.如果原始的文件系统对象并没有删除,而在bind调用时使用相同的文件名,名字赋值就会失败. ...

  4. lsm和lkm模块

    使用LSM Hook框架进行内核安全审计.元数据捕获,安全人员只需要按照既定的调用规范编写LKM模块,并加载进Linux内核,而不需要对system call lookup表进行任何修改 https: ...

  5. js怎样判断一个数是质数

    1.首先了解什么是质数(即:只能被1和它本身整除的数叫质数)主要代码 /** *判断该数是否为素数 */ function isPrimeNum(num){ ; i < num/+; i++) ...

  6. shell脚本中:单引号和双引号的区别

    单引号和双引号的区别 前面我们还留下一个疑问,定义变量时,变量的值可以由单引号' '包围,也可以由双引号" "包围,它们到底有什么区别呢?不妨以下面的代码为例来说明: #!/bin ...

  7. Linux如何删除特殊字符文件名或目录?

    通过文件的inode号删除文件 先用ls -i 找出要删除文件的inode 号 2ls -i |grep xxxxxx|awk '{print $2}'|xargs -i rm -f {} xxxxx ...

  8. 整理delphi及整理原则

    回看delphi使用的人也不多,但一直觉得这门语言挺好的,所以一直在用,在很多方面也给了很多帮助和启示 加上delphi的学习文件也确实比较少,故收集起来也不容易.今日,重新整理一下delphi ,一 ...

  9. Oracle分页:工作记录

    Oracle分页:传入值为List<String> . Mybatis XXXMapper.xml SELECT * FROM ( SELECT ROWNUM rn, t1.cardnum ...

  10. Noip 2012 day2t1 同余方程

    Description 求关于x的同余方程ax ≡ 1 (mod b)的最小正整数解. Input 输入文件为mod.in. 输入只有一行,包含两个正整数 a, b,用一个空格隔开. Output 输 ...