简洁的想法

仁爱、喜乐、和平、忍耐、恩慈、良善、信实、温柔、节制

精通批处理

| Comments


黑鹰基地www.3800cc.com

精通批处理第三辑

批处理中的符号


今天要讲的符号主要有以下几个

1.  @
2.  >
3.  >>
4.  &line;
5.  ^
6.  &
7.  &&
8.  ""
9.  ,
10. ;


废话少说,开讲了

一、 @

这个字符在批处理中的意思是关闭当前行的回显。我们从前几课知道
ECHO OFF可以关闭掉整个批处理命令的回显,但不能关掉ECHO OFF这个命令,现在我们在ECHO OFF这个命令前加个@,就可以达到所有命令均不回显的要求

1.bat
echo off
dir d:

2.bat
@echo off
dir d:

二、 >

这个字符的意思是传递并且覆盖,他所起的作用是将运行的回显结果传递到后面的范围(后边可以是文件,也可以是默认的系统控制台)

比如:

文件1.txt 的文件内容是:

1+1

使用命令:dir *.txt >1.txt

这时候1.txt 内容如下

 驱动器 C 中的卷没有标签。
 卷的序列号是 3827-1BDD

 C: 的目录

2004-05-25  00:57        17,755,907 Log.txt
2004-05-26  15:21                 3 1.txt
2004-05-26  15:21                 0 2.txt
               3 个文件     17,755,910 字节
               0 个目录    339,111,936 可用字节


三、>>

这个符号的作用和>有点类似,但他们的区别是>>是传递并在文件的末尾追加,而>是覆盖

用法同上

同样拿1.txt做例子

内容是1+1

使用命令:dir *.txt >>1.txt

咱们来看看显示的结果如何


四、&line;

这是一个管道传输命令,意思是将上一命令执行的结果传到下一个命令去处理

例如:

dir c:&line;find "txt"

以上命令是:查找C:所有,并发现TXT字符串。
FIND的功能请用 FIND /? 自行查看

在不使format的自动格式化参数时,我是这样来自动格式化A盘的

echo y&line;format a: /s /q /v:system

用过format的都知道,再格盘时要输入y来确认是否格盘,这个命令前加上echo y并用&line;字符来将echo y的结果传给format命令

从而达到自动输入y的目的

(这条命令有危害性,测试时请慎重)


五、^

^是对特殊符号"<",">","&"的前导字符,在命令中他将以上3个符号的特殊功能去掉,仅仅只把他们当成符号而不使用他们的特殊意义。

比如

echo test ^>1.txt

结果则是


他没有追加在1.txt里,呵呵。只是显示了出来


六、 &

这个符号允许在一行中使用2个以上不同的命令,当第一个命令执行失败了,也不影响后边的命令执行。

比如:

dir z: & dir y: & dir c:

以上命令会连续显示z,y,c盘的内容,不理会该盘是否存在


七、 &&

这个命令和上边的类似,但区别是,第一个命令失败时,后边的命令也不会执行


dir z: && dir y: && dir c:


八、""

双引号允许在字符串中包含空格,进入一个特殊目录可以用如下方法

cd "program files"
cd progra~1
cd pro*

以上三种方法都可以进入program files这个目录


九、,

逗号相当于空格,在某些情况下“,”可以用来当做空格使

比如

dir,c:

十、;

分号,当命令相同时,可以将不同目标用;来隔离,但执行效果不变,如执行过程中发生错误,则只返回错误报告,但程序还是会执行。

比如:

dir c:;d:e:;f:

以上命令相当于

dir c:
dir d:
dir e:
dir f:


当然还有一些特殊符号,但使用范围很小,我就没在这说,呵呵

唉,好累啊,又打了将近200行字。。。。

大家也得体谅体谅我们这些人啊。

结束

by 暝暝

Comments