批处理学习教程

2019-09-19 06:47:58于海丽

1+1
使用命令c:>dir *.txt >1.txt
这时候1.txt的内容如下
驱动器 C 中的卷没有标签。
卷的序列号是 301A-1508
C: 的目录
2003-03-11 14:04 1,005 FRUNLOG.TXT
2003-04-04 16:38 18,598,494 log.txt
2003-04-04 17:02 5 1.txt
2003-03-12 11:43 0 aierrorlog.txt
2003-03-30 00:35 30,571 202.108.txt
5 个文件 18,630,070 字节
0 个目录 1,191,542,784 可用字节
>将命令执行的结果覆盖了原始的文件内容。
在传递给控制台的时候程序将不会有任何回显(注意:这里的回显跟echo off关掉的回显不是同一概念。Echo off关掉的是输入命令的回显,这里的回显是程序执行中或后的回显)例:
C:>dir *.txt >nul
程序将没有任何显示也不会产生任何痕迹。
3、 符号(>>)
符号>>的作用与符号>相似,但他们的区别在于>>是传递并在文件末尾追加>>也可将回显传递给控制台(用法同上)例:
文件1.txt内同为:
1+1
使用命令c:>dir *.txt >>1.txt
这时候1.txt的内容如下
1+1
驱动器 C 中的卷没有标签。
卷的序列号是 301A-1508
C: 的目录
2003-03-11 14:04 1,005 FRUNLOG.TXT
2003-04-04 16:38 18,598,494 log.txt
2003-04-04 17:02 5 1.txt
2003-03-12 11:43 0 aierrorlog.txt
2003-03-30 00:35 30,571 202.108.txt
5 个文件 18,630,070 字节
0 个目录 1,191,542,784 可用字节
>>将命令执行的结果覆加在了原始的文件内容后面。
4、 符号(|)
|是一个管道传输命令意思是将上一命令执行的结果传递给下一命令去处理。例:
C:>dir c:|find "1508"
卷的序列号是 301A-1508
以上命令的意思为查找c:的所有并发现1508字符串。Find的用法请用 find /?自行查看
在不使用format的自动格式化参数的时候我是这样来自动格式化盘片的
echo y|fornat a: /s /q /v:system
用过format命令的人都知道format有一个交互对化过程,要使用者输入y来确定当前的命令是否被执行。在这个命令前加上echo y并用管道传输符|将echo执行的结果y传递给format从而达到手工输入y的目的(这条命令有危害性,测试的时候请谨慎)
5、 符号(^)
^ 是对特殊符号 > 、<、 &、的前导字符。在命令中他将以上的3个符号的特殊动能去掉仅仅只吧他们当成符号而不使用他们的特殊意义。例:
c:>echo test ^> 1.txt
test > 1.txt
从上面可以看出并没有把test写入文件1.txt而是将test >1.txt 当字符串显示了出来。这个符号在远程构建批处理的时候很有效果。
6、 符号(&)
&符号允许在一行中使用2个以上不同的命令,当第一个命令执行失败将不影响第2个命令的执行。例:
c:> dir z: &dir y: &dir c:
以上的命令将会连续显示z: y: c:盘内的内容不理会该盘符是否存在。
相关文章 大家在看