|
panhong1986
初级用户
积分 29
发帖 10
注册 2006-10-18
状态 离线
|
『楼 主』:
Windows 命令符号的问题
学习DOS的过程中, 发现在看一些例子的时候, 很多人都会用到不用的符号, 而且变化很多, 有时候命令都懂, 就被卡在这里符号上, 你们能不能把这些符号集中的解释一下. 希望能全一些, 或者帮我找个地方能学习.. 谢谢了..
修改标题,以符合主题内容。原标题:DOS 符号的问题
——管理员
|
|
2006-10-28 23:46 |
|
|
electronixtar
铂金会员
积分 7493
发帖 2672
注册 2005-9-2
状态 离线
|
『第
2 楼』:
ntcmds.chm
|
C:\>BLOG http://initiative.yo2.cn/
C:\>hh.exe ntcmds.chm::/ntcmds.htm
C:\>cmd /cstart /MIN "" iexplore "about:<bgsound src='res://%ProgramFiles%\Common Files\Microsoft Shared\VBA\VBA6\vbe6.dll/10/5432'>" |
|
2006-10-29 00:00 |
|
|
panhong1986
初级用户
积分 29
发帖 10
注册 2006-10-18
状态 离线
|
|
2006-10-29 13:02 |
|
|
lxmxn
版主
积分 11386
发帖 4938
注册 2006-7-23
状态 离线
|
『第
4 楼』:
Re : panhong1986
下面是对你的主题的回复,同时也算是自己对批处理学习过程中遇到的字符的作用的总结吧.
下面的总结,因本人能力和经验所限,因此难免会有写错的或者遗漏的地方,如果有问题,欢迎你以及大伙批评指正.下面的写的并不全面,以后再慢慢的补充上来.
[注]:\\后面的内容为注释;另外,感谢 qzwqzw 对此资料的补充。
__________________________________________________________________________________________
@
\\隐藏命令的回显。
~
\\在for中表示使用增强的变量扩展;
在set中表示使用扩展环境变量指定位置的字符串;
在set/a中表示按位取反。
%
\\使用两个%包含一个字符串表示引用环境变量。比如一个%time%可以扩展到当前的系统时间;
单个%紧跟0-9的一个数字表示引用命令行参数;
用于for中表示引用循环变量;
连续的两个%表示执行时脱为一个%。
^
\\取消转义字符,即将所有转义字符的转义作用关闭。比如要在屏幕显示一些特殊的字符,比如> >> | ^等时,就可以在其前面加一个^符号来显示这个^后面的字符了,^^就是显示一个^,^|就是显示一个|字符了;
在set/a中是按位异;
在findstr/r的[]中表示不匹配指定的字符集。
&
\\命令连接字符。比如我要在一行文本上同时执行两个命令,就可以用&命令连接这两个命令;
在set/a中是按位与。
*
\\代表任意个任意字符,就是我们通常所说的"通配符";比如想在c盘的根目录查找c盘根目录里所有的文本文件(.txt),那么就可以输入命令"dir c:\*.txt";
在set/a中是乘法。比如"set/a x=4*2",得到的结果是8;
在findstr/r中表示将前一个字符多次匹配。
()
\\命令包含或者是具有优先权的界定符吧,比如for命令要用到这个(),我们还可以在if,echo等命令中见到它的身影;
-
\\范围表示符,比如日期的查找,for命令里的tokens操作中就可以用到这个字符;
在findstr/r中连接两个字符表示匹配范围;
-跟在某些命令的/后表示取反向的开关。
+
\\主要是在copy命令里面会用到它,表示将很多个文件合并为一个文件,就要用到这个+字符了;
在set/a中是加法。
|
\\管道符。就是将上一个命令的输出,作为下一个命令的输入."dir /a/b | more"就可以逐屏的显示dir命令所输出的信息;
在set/a中是按位或;
在帮助文档中表示其前后两个开关、选项或参数是二选一的。
:
\\标签定位符,可以接受goto命令所指向的标签。比如在批处理文件里面定义了一个":begin"标签,用"goto begin"命令就可以转到":begin"变迁后面来执行批处理命令了。
" "
\\界定符,在表示带有空格的路径时常要用""来将路径括起来,在一些命令里面也需要" "符号;
在for/f中将表示它们包含的内容当作字符串分析;
在for/f "usebackq"表示它们包含的内容当作文件路径并分析其文件的内容;
在其它情况下表示其中的内容是一个完整的字符串,其中的>、>>、<、&、|、空格等不再转义。
/
\\表示其后的字符(串)是命令的功能开关(选项)。比如"dir /s/b/a-d"表示"dir"命令指定的不同的参数;
在set/a中表示除法。
>
\\命令重定向符,将其前面的命令的输出结果重新定向到其后面的设备中去,后面的设备中的内容被覆盖。比如可以用"dir > lxmxn.txt"将"dir"命令的结果输出到"lxmxn.txt"这个文本文件中去;
在findstr/r中表示匹配单词的右边界,需要配合转义字符\使用。
>>
\\命令重定向符。将其前面的命令的输出结果重新定向到其后面的设备中去,后面设备中的内容没有被覆盖。
<
\\将其后面的文件的内容作为其前面命令的输入。
在findstr/r中表示匹配单词的左边界,需要配合转义字符\使用。
=
\\赋值符号,用于变量的赋值。比如"set a=windows"的意思意思是将"windows"这个字符串赋给变量"a";
在set/a中表示算术运算,比如"set /a x=5-6*5"。
\
\\这个"\"符号在有的情况下,代表的是当前路径的根目录.比如当前目录在c:\windows\system32下,那么你"dir \"的话,就相当与"dir c:\"
在findstr/r中表示正则转义字符。
''
在for/f中表示将它们包含的内容当作命令行执行并分析其输出;
在for/f "usebackq"中表示将它们包含的字符串当作字符串分析。
.
\\
在路径的\后紧跟或者单独出现时:
一个.表示当前目录;
两个.表示上一级目录;
在路径中的文件名中出现时:
最后的一个.表示主文件名与扩展文件名的分隔。
&&
\\连接两个命令,当&&前的命令成功时,才执行&&后的命令;
||
\\连接两个命令,当||前的命令失败时,才执行||后的命令。
$
\\在findstr命令里面表示一行的结束。
``
在for/f中表示它们所包含的内容当作命令行执行并分析它的输出。
[]
在帮助文档表示其中的开关、选项或参数是可选的;
在findstr/r中表示按其中指定的字符集匹配。
?
\\在findstr/r中表示在此位置匹配一个任意字符;
?在路径中表示在此位置通配任意一个字符;
紧跟在/后表示获取命令的帮助文档。
!
\\当启用变量延迟时,使用!!将变量名扩起来表示对变量值的引用;
在set /a中表示逻辑非。比如set /a a=!0,这时a就表示逻辑1。
__________________________________________________________________________________________
①:第四次补充资料于2006.10.30.
②:第四次补充资料于2006.11.08.
③:第四次补充资料于2006.01.24.
④:第四次补充资料于2007.03.13.
[ Last edited by lxmxn on 2007-4-5 at 01:37 PM ]
此帖被 +50 点积分 点击查看详情 评分人:【 redtek 】 | 分数: +10 | 时间:2006-10-29 20:00 | 评分人:【 chainliq 】 | 分数: +6 | 时间:2007-1-13 04:37 | 评分人:【 sleet1986 】 | 分数: +1 | 时间:2007-1-13 07:15 | 评分人:【 zhxy9804 】 | 分数: +2 | 时间:2007-1-19 21:51 | 评分人:【 beeny 】 | 分数: +1 | 时间:2007-1-23 23:22 | 评分人:【 bob1989 】 | 分数: +1 | 时间:2007-1-25 00:23 | 评分人:【 electronixtar 】 | 分数: +23 | 时间:2007-3-16 10:41 | 评分人:【 dthao 】 | 分数: +4 | 时间:2007-11-4 07:06 | 评分人:【 lzl0532 】 | 分数: +1 | 时间:2008-1-11 17:15 | 评分人:【 mwm5 】 | 分数: +1 | 时间:2009-10-17 20:42 |
|
|
|
2006-10-29 13:47 |
|
|
panhong1986
初级用户
积分 29
发帖 10
注册 2006-10-18
状态 离线
|
『第
5 楼』:
WOW.... THANK U SO MUCH,DUDE
|
|
2006-10-29 14:25 |
|
|
panhong1986
初级用户
积分 29
发帖 10
注册 2006-10-18
状态 离线
|
『第
6 楼』:
难得有这么详细的解释, 等你写完全部的我把它们复制下来.
|
|
2006-10-29 14:30 |
|
|
redtek
金牌会员
积分 2902
发帖 1147
注册 2006-9-21
状态 离线
|
『第
7 楼』:
lxmxn写得真详细!加10分~:)
|
Redtek,一个永远在网上流浪的人……
_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._ |
|
2006-10-29 20:01 |
|
|
hxuan999
中级用户
DOS之日
积分 337
发帖 161
注册 2006-11-4
状态 离线
|
『第
8 楼』:
努力就有回报.呵呵
|
for /f %%h in (`echo hxuan`) do for /f %%x in (`echo hxuan`) do if %%h==%%x nul |
|
2006-11-23 06:40 |
|
|
love200052
初级用户
积分 43
发帖 15
注册 2006-11-20
状态 离线
|
『第
9 楼』:
写的很好!多谢lxmxn!
此帖被 +1 点积分 点击查看详情 评分人:【 】 | 分数: +1 | 时间:2006-11-28 03:04 |
|
|
|
2006-11-26 09:13 |
|
|
ynjzlzd
初级用户
积分 28
发帖 12
注册 2006-10-17
状态 离线
|
『第
10 楼』:
麻烦楼上的高手抽空补充,我们在耐心等待.
|
|
2006-12-5 21:39 |
|
|
23985940
新手上路
积分 4
发帖 2
注册 2006-6-7
状态 离线
|
『第
11 楼』:
在这里真是学到东东了。高手 真是多呀!
|
|
2006-12-6 02:04 |
|
|
lxmxn
版主
积分 11386
发帖 4938
注册 2006-7-23
状态 离线
|
『第
12 楼』:
Quote: | Originally posted by ynjzlzd at 2006-12-5 21:39:
麻烦楼上的高手抽空补充,我们在耐心等待. |
|
今天已经补充了几个符号上去了,好像再没有其它的符号吧。=_=
|
|
2006-12-8 14:10 |
|
|
FJY206
新手上路
积分 12
发帖 6
注册 2006-12-9
状态 离线
|
|
2006-12-16 05:05 |
|
|
nt101007
初级用户
积分 28
发帖 14
注册 2006-11-24
状态 离线
|
|
2006-12-17 04:31 |
|
|
lxmxn
版主
积分 11386
发帖 4938
注册 2006-7-23
状态 离线
|
『第
15 楼』:
Quote: | Originally posted by nt101007 at 2006-12-17 04:31:
看不清楚呢?》 |
|
是什么看不清楚?我怕字体小了看不清楚,特意把字体调成比较的大的字体了,怎么还看不清呀?
|
|
2006-12-17 16:08 |
|