学习DOS的过程中, 发现在看一些例子的时候, 很多人都会用到不用的符号, 而且变化很多, 有时候命令都懂, 就被卡在这里符号上, 你们能不能把这些符号集中的解释一下. 希望能全一些, 或者帮我找个地方能学习.. 谢谢了..

下面是对你的主题的回复,同时也算是自己对批处理学习过程中遇到的字符的作用的总结吧..


  下面的总结,因本人能力和经验所限,因此难免会有写错的或者遗漏的地方,如果有问题,欢迎你以及大伙批评指正.下面的写的并不全面,以后再慢慢的补充上来...

[注]://后面的内容为注释.

_______________________________________________________________

@

//执行命令的时候,在CMD窗口隐藏命令本身的显示;

~

//变量扩展功能,比如有一个变量%%i指示一个文件名,那么%%~fi就可以扩展变量到这个文件的完整路径了;

%

//引用变量的值.比如一个%time%可以扩展到当前的系统时间;

^

//转义字符.不如要在屏幕显示一些特殊的字符,比如> >> | ^等时,就可以在其前面加一个^符号来显示这个^后面的字符了,^^就是显示一个^,^|就是显示一个|字符了;

&

//命令连接字符.比如我要在一行文本上同时执行两个命令,就可以用&命令连接这两个命令了.比如我们查看了计算机的用户,还要查看一下本机的IP地址,就可以在一行上写"net user & ipconfig ";

*

//代表任意个任意字符,就是我们通常所说的"通配符";比如想在c盘的根目录查找c盘根目录里所有的文本文件(.txt),那么就可以输入命令"dir c:/*.txt";①*还可以表示乘法运算符,比如"set /a x=4*2",得到的结果是:"8".

()

//命令包含或者是具有优先权的界定符吧,比如for命令要用到这个(),我们还可以在if,echo等命令中见到它的身影;

-

//范围表示符,比如日期的查找,for命令里的tokens操作中就可以用到这个字符;

+

//主要是在copy命令里面会用到它,表示将很多个文件合并为一个文件,就要用到这个+字符了;①也可以作为算术运算的加法.

|

//管道符.就是将上一个命令的输出,作为下一个命令的输入."dir /a/b | more"就可以逐屏的显示dir命令所输出的信息;

:

//标签定位符,可以接受goto命令所指向的标签.比如在批处理文件里面定义了一个":begin"标签,用"goto begin"命令就可以转到":begin"变迁后面来执行批处理命令了.

""

//界定符,在表示带有空格的路径时常要用""来指定路径,在一些命令里面也需要""符号;

/

//参数表达符,也可以表示算术表达式里的除法.比如"dir /s/b/a-d"表示"dir"命令指定的不同的参数;

>  >>   <

//都是命令重定向符,可以将命令的输出或显示的字符重新定向到新的设备或者文件中.比如可以用"dir > lxmxn.txt"将"dir"命令的结果输出到"lxmxn.txt"这个文本文件中去.

①-----------------------------------------------------------------------------------

=

//赋值符号,用于变量的赋值,比如"set a=windows"的意思意思是将"windows"这个字符串赋给变量"a";还可以用与算术运算,比如"set /a x=5-6*5".

②-----------------------------------------------------------------------------------

/

//这个"/"符号在有的情况下,代表的是当前路径的根目录.比如当前目录在c:/windows/system32下,那么你"dir /"的话,就相当与"dir c:/"

.

//这个点"."代表的是当前目录.

..

//两个点代表当前目录的上一级目录.比如当前目录在"C:/WINDOWS/SYSTEM32/"下面的话,那么"cd .."就可以将当前目录设置成"C:/WINDOWS/".

&&

//连接两个命令,当&&前的命令成功时,才执行&&后的命令.

||

//连接两个命令,当||前的命令失败时,才执行||后的命令.

$

//目前本人知道的就是在findstr命令里面表示行的结束.

________________________________________________________________


  今天就写这么多了,以后再补充上来..

①:补充资料于2006.10.30.

②:补充资料于2006.11.08.

[ Last edited by lxmxn on 2006-12-8 at 02:13 PM ]