本人初学DOS及批处理,现记录下刚刚学习的DOS常见特殊符号
1.@屏蔽回显符号
@ echo off 不显示@后面的命令
2.%变量引导符
引用变量:%var%
调用程序外部参数:1%、2%至9%,1%为第一个参数,9%为第九个参数,0%为调用批处理命令本身,以达到批处理本身循环的目的
3.|命令管道符
格式:第一个命令|第二个命令|第三个命令
第一个命令的结果作为第二个命令的参数来使用
dir c:\ |find “txt”从c盘中查找txt字符串
4.>重定向符
把>前面命令得到的结果在>后面范围显示
ping 192.168.0.1>a.txt
5.>>重定向符
和>基本相同,区别是>>是传递并在文件的末尾追加,而>是覆盖
echo hi>a.txt
echo hello>>a.txt
6.&组合命令
格式:第一个命令&第二个命令&第三个命令
顺序执行,不会因为某一个命令的失败而停止整个命令行的执行
7.&&组合命令
格式:第一个命令&&第二个命令&&第三个命令
顺序执行,当某一个命令失败后,后面的命令就停止执行
8.||组合命令
格式:第一个命令||第二个命令||第三个命令
顺序执行,当一条命令失败后才执行第二条命令,当碰到执行正确的命令后将不执行后面的命令,如果没有出现正确的命令则一直执行完所有命令
注意:管道命令的优先级高于重定向命令,重定向命令的优先级高于组合命令
即|优先级大于>和>>优先级大于||、&、&&
9.^转义字符
^是对特殊符号<,>,&的前导字符,在命令中他将以上3个符号的特殊功能去掉,仅仅只把他们当成符号而不使用他们的特殊意义
echo test^>1.txt将得到test>1.txt
10.“”字符串界定符
允许在字符串内包含空格
11.,逗号
等同于空格
dir,c:\等同dir c:\
12.()括号
括号中可以包括多行命令,这些命令将被看成一个整体,视为一条命令行
13.;分号
当命令相同时,可以将不同目标用;来隔离,但执行效果不变,如执行过程中发生错误,则只返回错误报告,但程序仍会执行
dir c:\;d:\;e:\;z:\
dir c:\;d:\;e:\1.txt
14.!感叹号
在变量延迟问题中,用来表示变量,即%var%应该表示为!var!