这里“*”代表主文件名,“*.EXE”表示所有以EXE为扩展名的文件。“*”叫通配符,它可以用来代替一个或几个未知的字符,灵活地运用它,可以方便我们的操作。
除“*”以外,还有一个通配符“?”。它们的区别在于,“*”代替它所在的位置和相连的其他位置上的字符,而“?”只能代替它所在位置的那一个字符。在有些特别的情况下,用“?”更方便。
例如,假设我们知道这张盘上有PCSHELL和PE两个软件,但只记得PE是P打头的两个字符的名字,但忘记了第二个字符是什么,就可以这样来查看:
A>;DIR P?.EXE.
就会显示
PE.EXE
这样,PCSHELL.EXE文件不会“混”在其中显示出来。注意,在一个文件名中,“?”号多用几个没关系,例如PE???是合法的;但“*”在主文件名和扩展名中只能各用一次,即*C*.EXE是非法的。
通配符给我们使用DIR命令带来了很大方便,可以说,不会使用通配符就不是真正会使用DIR。在其他许多命令中,通配符也起到很大作用,我们将结合具体命令的学习来介绍。
命令
和文件一样,命令也是计算机运用中的一个普通的基本概念。简单地说,命令就是向机器输入一句话,告诉机器去做某件事情。在DOS操作系统和其他各种软件系统中,命令的使用都是在提示符后面输入一串字符,然后打回车键确认。计算机接到这个命令之后,先以它能理解的“语法”去解释,如果命令“合法”,它就执行;如果不合法,它就会不懂,将显示出错误信息,请你重新输入。
这种使用命令的方式叫做“人机对话方式”。这种方式是最早的方式,也是现在应用最广泛的方式。除此之外,还有“窗口菜单”的方式,在许多应用软件和新的操作系统中使用。如WINDOWS,这种方式不需要逐个输入字符,只要将光标移到需要的菜单项后确认即可,直观方便,在DOS的高版本中有一个叫DOSSHELL.EXE的文件,运行这个文件,就可以用菜单方式进行一些较简单的DOS操作。
在DOS中,命令有3种类别:
1、内部命令
DATE、TIME、VER、DIR等都是内部命令,它们不需要单独的程序来存放,而是它们共同存放,它们共同存放在一个COMMAND.COM文件中。在DOS引导盘中,都有这个文件,DOS一启动,它就被调入内存,于是所有的内部命令就都可以使用了。
2、外部命令
外部命令都是各自由一个单独程序来贮存的,例如,FORMAT.EXE只有在命令被使用时才调入内存,并且在执行完毕后就从内存中删掉了。因此,执行外部命令时,先要找到有关文件。
3、批处理命令
在DOS中,可以把多条命令集中在一起,放在一个文件中,这种文件就叫做批处理命令文件。这种文件的扩展名就是前面讲的BAT。运行批处理命令,就是键入批处理命令文件的(主)文件名,再回车。这样,包含在文件中的多条命令就可以连续执行而无需分别输入了。DOS的可执行文件的运行方法,就是键入(主)文件名然后回车。这里可以看出,DOS命令的使用实质上就是执行可执行文件。
目录和路径
一台微机一般要带两三个磁盘驱动器,其中有的盘(如硬盘)存放的文件很多,为了便于管理,就将某些不同类别的文件分开存放,于是产生了“目录”和“路径”的问题。
子目录
每一张磁盘上都有一个目录来记录这张盘存放的文件的信息,包括文件名、长度、最后一次被修改的日期和时间。有时,一张盘上存放的东西比较多,有的一些文件是相关的,但和盘上其余的文件没有什么联系,我们就可以把它们集中存放,为这些文件单列一个目录,称做“子目录”。在整个磁盘的目录中,能看到有这个子目录,但不能直接看到其中的内容。也可以说,这个目录比整个磁盘的目录即根目录“低”一级,所以叫子目录。子目录下可以再建子目录,即:一级子目录,二级子目录等等。对于子目录的操作有几条常用命令,下面分别介绍。
1、建立子目录
命令格式:MD[盘符\][子目录\]子目录名功能:在指定的盘上指定的目录下建立一个子目录。
例如,在C盘根目录下建立WW1子目录:
C>MD C:WW1
然后再在这个子目录下建立WW2子目录:
C>MD C:WW1WW2
这个命令中,有时[盘符\]和[子目录\]都可以省去,省去时,新的子目录就加在当前目录之下。
2、显示当前目录
命令格式:CD
功能:显示当前目录名。
3、改变当前目录
命令格式:CD[盘符\][子目录\]
功能:将当前目录转为命令中指定的目录。
例如,当前在C盘根目录下,要转到WW1子目录中可输入:
C>CD WW1.
如果从根目录直接转到WW2子目录,可以用:
C>CD WW1WW2.
可以看一下结果:
C>CD
C:WW1WW2
转移到WW2子目录后,我们用DIR看一下内容,此时显示的是WW2子目录情况:
C>DIR
Volume in Drive C has no label
Directory of C:WW1WW2
〈DIR〉11-10-964:06P
〈DIR〉11-10-964:06P
2file(s)****bytes free
这个子目录中还没有存入任何文件。但DOS仍列出两个目录项,这两个目录项的文件名位置显示的是*和..,意思是:是当前工作目录的代号。
是上一级目录的代号。
我们可以用CD..转到上一级子目录中:
C>CD..
C:WW1 此时如果再使用一次CD..命令,即可返回根目录,或者我们可以用DIR..来直接显示根目录内容。
用CD命令还可用来直接返回根目录。
命令格式:CD 功能:不管当时在什么子目录中,使用这个命令都直接回根目录。
4、删除子目录
命令格式:RD[盘符\][子目录\]子目录名功能:如果该子目录是空的,就删除它;如果子目录中有文件,它不能删除子目录。
路径的表示
对于每一张盘来说,整个盘的目录叫根目录,在根目录下可以有子目录,可以叫做一级子目录;在某些一级子目录下,还会有子目录,即二级子目录;在二级子目录下还可能有三级子目录……。而对于一台微机来说,它要同时处理A驱中的A:盘,B驱中的B:盘,C:盘等等,每一张盘的结构都可能像上面描述的那样,文件存放在不同的地方,那么,我们要寻找文件,就要通过不同的途径。在计算机术语中,就叫做路径。
在DOS中,路径是用盘符、子目录名和向右的斜杠组合起来表示的。
根目录中文件的路径表示为:
A: B: C: 例如,表示根目录下存放的COMMAND.COM文件,可以用它的路径加上文件名来全面地说明:
C:COMMAND.COM
根目录下的一级子目录,如WW1,应写为:C:WW1根目录下一级子目录中的二级子目录,如WW2,则写为:
C:WW1WW2
依此类推。
关于路径的基本操作
Prompt和Path是关于路径的常用的重要命令。Prompt并非专对于路径操作的,但它最常用的功能就是用来提示路径。
1.PROMPT命令格式
PROMPT prompt-string
功能:设置系统提示符。
用DOS正常启动后,系统的提示符是A>;或C>;,即代表盘号的字母加上一个“>;”。利用PROMPT命令,可以改变这种显示。
格式中的“prompt-string”意思是一个字符串,这个字符串就将是新的提示符。例如,输入:
C>;PROMPT haha!
则下一行出现的提示符就变成了:
HaHa!
在prompt-string中,可以包含特殊的字符串,这些字符串是用一个“$”号加上一个字母表示,而字母有特定的含义:
b字符
d当前日期
e替代串Ese
h退格字符
g“>;”字符
l“<;”字符
n显示当前盘驱动器
p显示当前路径
t显示当前日期
v显示当前版本号
$“$”字符
对于这些含义,你可能不全理解,没有关系。即使是专业计算机人员,也未必都用过这些符号,因为常用到的提示符只有两种,一种是:
PROMPT $n$g
产生:
A>;或C>;等。
另一种就是:
PROMPT $p$g
产生:
A:>或C:>等。 第一种提示符就是我们开机后看到的,它只显示出盘号,而第二种可以直接看到路径。
例如,当我们在C盘WW1子目录下操作时,第一种提示符仍为C>;,而第二种为C:WW1>;。这就可以和根目录或其他子目录直接区分开来。
我们建议每次启动DOS后,都执行:
C>;PROMPT$P$g(或A>;PROMPT $p$g)
将提示符改为
C:>;(或:A:>;)
如果有兴趣,你可以用前面讲的符号设计不同的提示符,可能会达到很有意思的效果。不过在实用中,注意不要使用特殊的提示符,以免影响操作。
2、PATH命令格式
PATH[路径1][路径2]…
功能:选定一些路径成为“默认”路径。默认是指使用时不必再专门指出,系统“自然会明白”。当前路径显然是默认路径,而使用了PATH之后,可以增加默认路径。这样,当你输入一项外部命令或任何可执行文件名时,如果系统在当前路径中没有找到这个文件,就会自动转向其他默认的路径,逐个建立。只有检索了所有默认路径仍没找到时,才给出错误信息。例如,在使用硬盘时,我们都习惯建立一个DOS子目录,将DOS的外部命令文件存放在这个子目录中,为了使用方便,可以在提示符后输入:
PATH C:DOS.
以后在使用外部命令时,就不必专门指出命令文件的路径,于是外部命令就可以和内部命令一样,在任何子目录都能直接使用了。
可以同时设置多条路径,例如:
PATH C:;C:DOS;A:;
将C盘根目录、C盘DOS子目录和A盘根目录都设置为默认的路径,这3个路径下的文件都可直接使用。
另外,如果输入:
PATH
不带任何路径,就是将路径“置空”,这时,默认路径就只剩下当前路径一个了。
数制的概念
数制就是记数法、进位制。目前人们通用的数制是十进制,但使用十进制并非是天经地义的,它只不过是来源于远古时代用十指记数的一种约定俗成的习惯。事实上,在我们的生活中也有使用非十进制的实例,比如日期、时间的表示和进位以及英制度量衡等。
不同数制之间的区别主要是基数不同,它们的书写规则和运算规律是一致的。为区别非十进位制数与十进制数,非十进制数应使用进位制注脚。
数字的个数等于基数
十进制有0~9共10个数字。以此类推,二进制应当只有2个数字,记为0和1。基数不是一个独立的数字。
逢基数进一
凡某位运算结果为基数就要进位,本数位的值记为0,进位值为1。在十进制中,逢十进一。在二进制中,逢二进一。
每一位的权(数位值)是基数的方幂,指数自右至左递增1十进制:…10410310210110010-110-210-3……二进制:…24232221202-12-22-3……需要特别指出的是,为说明方便,此处二进制数是用十进制数的数字表达的。
每一位的数值等于该位上的权与数字的乘积
例如:
1995=1000×1+100×9+10×9+1×5
1001.101B=23×1+20×1+2-1×1+2-3×1
同样,为说明方便,此处等号右边的二进制数是用十进制数字表达的。
电子计算机与二进制
计算机要能够执行按一定规则编成的程序,它的内部必须要有很强的逻辑功能;由于这种逻辑功能是通过晶体管的导通和截止来实现的,而二进制恰恰是最适合于完成这种功能的一种运算规则。
为什么计算机要采用二进制,而不是常用的十进制或八进制、十六进制呢?因为任何一种事物、一种状态,要将之量化,最直接、最明了的方法就是将之区分为两极,这不但是事物最根本的状态,也是最利于表达的状态。早在17世纪,德国的数学家莱布尼兹就提出了自己的二进制思想,并称这种思想来源于中国周易中的八卦。通过对八卦的解析,他发现八卦就是用最简单的两种状态组合而成,最后又可演变总结世间万物。在以后的发展中,二进制越来越符合计算机的设计思想。电流的速度是最快的,而电流最明显的两种状态就是导通和截止,这无疑也适合于二进制的使用。因此,在计算机的逻辑电路中,人们就使用0和1两个数字来代表两种状态。这样,一个晶体管就可以用01码表示一条现代集成电路设计已完全采用了二进制语言信息;如果有两个晶体管,就可能产生01,10,00,11四种状态的组合,就能表示22=4条信息。依次类推,有n个晶体管,就可以表示2n条信息。由于随着n的增长,信息量是按几何级数增长的,所以,可表示的信息状态是极其可观的。集成电路技术已把成千上万个晶体管用现代技术做在一起,其处理信息的能力是可想而知的。