中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS学习入门 & 精彩文章 (教学室) » [转贴]从 DOS 命令到制作IMG映像的详细解说实战教程课
作者:
标题: [转贴]从 DOS 命令到制作IMG映像的详细解说实战教程课 上一主题 | 下一主题
shanliang8008
银牌会员




积分 1148
发帖 514
注册 2007-6-1
来自 河北
状态 离线
『楼 主』:  [转贴]从 DOS 命令到制作IMG映像的详细解说实战教程课

感谢原作者   我是从启动易论坛看到
从 DOS 命令到制作IMG映像的详细解说实战教程课  


                          第一课  基本 DOS 命令集详细解说

            path    指向路径命令:
                    path=c:\dos;c:\windows;c:\ 这条命令就是说,当我们执行一个文件时,
                    电脑先在当前目录下查找这个文件,找到则执行,如果没有找到,则电脑按照
                    path命令所指定的目录顺序去查找,先在C盘dos目录下,然后在windows目录
                    下,最后在C盘根目录下寻找这个文件
            edit    编辑命令:
            edit   w.bat回车(就是编辑 w.bat文件的意思)
            ren     改名命令:
                    例如把abc.txt改成bne.dat,就可以输入ren abc.txt bne.dat。
            type    查看命令:
                    我想知道abc.txt文件的内容,就从键盘上输入type abc.txt 。
            diskcopy 磁盘复制命令:
                     diskcopy命令的格式很简单:diskcopy 源驱动器名 目的驱动器名。举个例子来
                     说,如果要在A驱动器上复制磁盘,就输入:diskcopy a: a: (奇怪吧,哪来两
                     个A盘,且看下文电脑是如何理解的)。
            chkdsk   磁盘查看命令:
                     就输入chkdsk C:
            cd       改变当前目录命令:
                     用法,就输入cd abc
            sys      制作DOS系统盘命令:
                     用法,就输入sys a:
            copy     拷贝文件命令:
                     用法,就输入copy c:\abc.txt a:\
            del     删除文件命令:
                    用法,就输入 del c:\abc.txt
            deltree 删除目录树命令:
                     用法,就输入 deltree c:\abc
            dir     查看命令:
                    用法,就输入 dir 如:
                    用法1、dir /w
                    用法2、dir /p
                    用法3、dir /w/p
            format  格式化磁盘命令:
                    用法1,就输入format a:(完全格式化不带任何信息)
                    用法2,就输入format a:/q(快速格式化不带任何信息)
                    用法3,就输入format a:/s(完全格式化并写入DOS启动主文件)
                    用法4,就输入format a:/q/s(快速格式化并写入DOS启动主文件)
            md      建立目录命令:
                    用法,就输入md abc
            mem     查看内存状况命令:
                    用法,就输入mem
            rd      删除目录命令:
                    用法,就输入rd abc
            cls     清屏命令:
                    用法,就输入cls
                    适用场合:屏幕上太乱了,或是屏幕上出现乱码了, 清除屏幕上显示内容但不影响
                    电脑内部任何信息.
            move    移动文件与改目录名:
                    用法,就输入c:\>move c:\autoexec.bat c:\old
            (移动autoexec.bat文件至old目录下)
                    用法,就输入c:\>move c:\config.sys c:\temp
(移动config.sys文件至temp目录下)
            more   分屏显示命令:
                   用法,就输入C:\>type msdos.w40 | more
                   适用场合:当输出很多一屏显示不下时采用,几乎适合所有命令,尤其是type等命令
                   时很有用。 使用more时磁盘不能有写保护,也不适合光驱。
            xcopy 拷贝目录和文件命令:
                  用法,就输入xcopy *.* [目录] /s
            适用场合:在进行连同子目录一起拷贝时很有用,在拷贝大量文件时比COPY命令要快得多 .
            attrib 设置文件属性命令:
                   用法1,就输入attrib +r abc.txt
                   用法2,就输入attrib +h *.* /s 隐含所有文件
                   参数:
                   attrib +r或-r [文件名] 设置文件属性是否为只读
                   attrib +h或-h [文件名] 设置文件属性是否隐含
                   attrib +s或-s [文件名] 设置文件属性是否为系统文件
                   attrib +a或-a [文件名] 设置文件属性是否为归档文件
                   attrib /s 设置包括子目录的文件在内的文件属性
            date   显示及修改日期命令:
                   用法,就输入C:\>date 03-20-2005 将日期改为2005年3月20日
            lable  设置卷标号命令:
                   用法,就输入label [盘符] [卷标名] 设定指定盘的卷标
                   例  子 C:\>label
                 Volume in drive C is WANG
                 Volume Serial Number is 2116-1DD0
                 volume label (11 characters,Enter for none)?
                 可以输入卷标,直接回车后
                 Delete current volume label (Y/N)?
                 按y删除旧卷标,按n不更改
            defrag 磁盘碎片整理命令:
                    用法,就输入C:\>defrag
            doskey  调用和建立DOS宏命令命令:
                    用法,就输入 doskey /reinstall      重新安装doskey
                  doskey /bufsize=       设置缓冲区的大小
                  doskey /macros        显示所有doskey宏
                  doskey /history        显示内存中所有命令
                        doskey /insert|overstrike    设置新键入的字符是否覆盖旧的字
            例  子]  C:\>DOSKEY
                   C:\>dir
                   C:\>copy C:\temp\*.* a:
                   C:\>del c:\temp\*.*
                   C:\>copy b:\*.* c:\temp
                          C:\>doskey di=dir/w/p 定义di为宏命令,意思是执行dir/w/p
            fdisk    硬盘分区命令:
                     用法,就输入fdisk后按回车即可进入提示界面
            emm386   扩展内存管理命令:
                     用法 lh [程序]  
                     将程序装入高端内存 使用此命令时,config.sys文件中需有下面两条语句。
                     device=emm386.exe dos=umb
                     lh [程序] /l:区号    将程序装入指定的umb区
                     lh /s          一般是由memmaker专用
                     例子:  C:\MOUSE\>lh mouse  将鼠标驱动程序装入高端内存
            memmaker 内存优化管理命令:
                     用法,就输入C:\>memmaker 回车,出现提示一直回车 2. 回车继续,F3退出
            msd      系统检测命令:
                     用法,就输入 C:\>msd 回车后可见到实例
            undelete 恢复被删除的文件命令:
                     用法,就输入undelete
                       undelete /all   恢复文件且不再询问是否恢复
                       undelete /list  列可恢复的文件名
            prompt  设置提示符命令:
                    适用场合:当你厌烦了c:\>的提示符或者您想使您的提示符与众不同时,您可以
                    试一试,非常有趣的DOS命令,可以随时显示时间与日期。
                   [用法] prompt $p$g 以当前目录名和>号为提示符,这是最常用的提示符
                       prompt $t 表示时间      prompt $d 表示日期
                    prompt $$ 表示$        prompt $q 表示=
                    prompt &#36;v 表示当前版本    prompt &#36;l 表示<
                    prompt &#36;b 表示|        prompt &#36;h 表示退位符
                    prompt &#36;e 表示Esc代表的字符  prompt &#36;_ 表示回车换行
                   [例子] C:\DOS>prompt wang&#36;g 将wang>作为提示符
                    WANG>prompt &#36;t&#36;d&#36;g  使用时间、日期和>号做为提示符
                    0:01:07.77Thu 08-29-1996>prompt &#36;p&#36;g
                    C:\DOS>
            restore  恢复已备份的文件命令:
                     建议:如果以前用backup做过文件备份,则当原文件损坏时可以用它来恢复
                     文件,将用backup命令备份的磁盘中的文件恢复到另一磁盘中,备份磁盘中
                     应有backup.00X和control.00X这两条文件。
                   [用法] restore [备份盘符] [目标盘符]
                    将备份盘上备份文件恢复到指定盘上
                    restore /s     将备份文件包括子目录都恢复到指定盘上
                    restore /p     让用户判断是否恢复文件
                    restore /b:日期  恢复日期以前的文件
                    restore /a:日期  恢复日期之后的文件
                    restore /l:时间  恢复时间之前的文件
                    restore /e:时间  恢复时间之后的文件
                    restore /m     只恢复上次备份后修改过的文件
                    restore /n     只恢复上次备份后已删 除的文件
                    restore /d     只显示要恢复的文件名
                   [例子] C:\DOS>restore a: c:
                    Insert backup diskette 01 in drive A:
                    Press any key to continue . . .
                    在A驱中放入第一张备份盘,按任意键即可,恢复完第一张后,按顺
                    序放入其它盘即可。
                    当您用上述命令不能正确恢复文件时请用:
                    C:\DOS>restore a: c:\ /s
            time     显示及修改时间命令:
                     用法,就输入time 即可按提示修改,不修改按回车忽略修改
            set      设置环境变量命令:
                     用法,就输入set [环境变量]=[字符串]
                     例子: C:\>set path=c:\dos 与path c:\dos含义相同,
            这条命令常常用在autoexec.bat中
            smartdrv  设置磁盘加速器命令:
                      用法,它可以提高硬盘访问速度,最好在autoexec.bat文件中加载吧。
                      用法: smartdrv /x
                 执行并驻留内存,开辟磁盘加速缓存区,并屏蔽所有驱动器缓存,是
                 较常用的方法(一般用这个命令就够了)
                 smartdrv /c       将缓存内的信息都写入硬盘
                      smartdrv /e: 数字    设置一次移动的信息量
                 smartdrv /b: 数字    设置预先读取的缓冲区大小
            append    设置非执行文件的路径命令:
                      适用场合: 当您无法在多个目录中寻找到自己输入的文稿时,可以试一试这
                      个命令,用法类似path。
                      用法: append [路径];[路径]
                      例子: C:\>append c:\test
                 设置寻找非可执行文件路径为c:\test如果该目录下有文件1.txt时,
                 在其它目录下调用1.txt找不到时,可自动寻找到c:\test目录。
                 D:\UCDOS>edit 1.txt 可找到C:\test\1.txt文件
            debug    程序调试命令:
                     如果你学过汇编语言,那你应该会使用debug,如果没学过,最好别使用.
                     用法  debug [文件名]
            diskcomp 比较磁盘命令:
                      适用场合: 比较两张盘是否相同,没想到什么时候会用到,在比较用
                      diskcopy拷贝的两张盘,为什么不用diskcopy/v校验呢?
                     [用法]diskcomp [盘符1] [盘符2] 比较盘1和盘2
                     diskcomp /1 只比较磁盘的第一面
                     diskcomp /8 只比较没磁道的前8个扇区
                     [例子]C:\>diskcomp a: a:
                     在同一软驱中比较两张盘
                     Insert FIRST diskette in drive A:
                     放入第一张盘
                     Press any key to continue . . .
                     Comparing 80 tracks 18 sectors per track, 2 side(s)   
                     Insert SECOND diskette in drive A:
                     放入第二张盘
                     Press any key to continue . . . Compare OK
                     比较未发现不同
                     Compare another diskette (Y/N) ?n
                     是否比较其它盘,选y继续比较,选n停
            expand   解压工具命令:
                      微软公司软件原始安装盘中有许多后缀以"_"结尾的压缩文件,可以用它解压,
                      解除您因为少数几个文件丢失造成的麻烦。(Windows下用Winrar就可以解压)
                      用法,C:\>expand a:vsafe.co_ c:\dos\vsafe.com

            fasthelp 快速显示帮助信息命令:
                      用法,在DOS下输入abc.exe /fasthelp  同/?
            fc        文件比较命令:
                      用法,就输入fc[文件名1][文件名2]比较两文件的不同参数还有: a c l Lbn n t w nnnn
            subst    路径替换命令:
                      用法 subst   显示当前的替代路径
                    subst [盘符] [路径]                    
                    将指定的路径替代盘符,该路径将作为驱动器使用
                    subst /b         解除替代
                    [例子]C:\DOS>subst a: c:\temp 用c盘temp目录替代a盘
                    C:\>subst a: /d     解除替代

                     
                          第二课  基本 DOS 批处理详细解说

            一、echo、@、call、pause、rem 是批处理文件最常用的几个命令,我们就从他们
                                           开始学起
            echo            表示显示此命令后的字符
            echo off        表示在此语句后所有运行的命令都不显示命令行本身
            @               与echo off相象,但它是加在其它命令行的最前面,表示运行时
                            不显示命令行本身。
            call            调用另一条批处理文件(如果直接调用别的批处理文件 ,执行完
                            那条文件后将无法执行当前文件后续命令)
            pause           运行此句会暂停,显示 Press any key to continue... 等待用户
                            按任意键后继续  
            rem             表示此命令后的字符为解释行,不执行,只是给自己今后查找用的  
            二、if 、goto 、choice 、for 是批处理文件中比较高级的命令,如果这几个你用
                                           得很熟练,你就是批处理文件的专家啦。
            if      表示将判断是否符合规定的条件,从而决定执行不同的命令。 有三种格式:
                    1、if "参数" == "字符串"  待执行的命令
                    参数如果等于指定的字符串,则条件成立,运行命令,否则运行下一句。
                    (注意是两个等号)
                    如:if "%1"=="a" format a:
                    2、if exist 文件名  待执行的命令
                    如果有指定的文件,则条件成立,运行命令,否则运行下一句。
                    如:if exist config.sys edit config.sys
                    3、if errorlevel 数字  待执行的命令
                    如果返回码等于指定的数字,则条件成立,运行命令,否则运行下一句。
                    如if errorlevel 2 goto x2  DOS程序运行时都会返回一个数字给DOS,
                    称为错误码errorlevel或称返回码

            goto    批处理文件运行到这里将跳到goto 所指定的标号处,一般与 if 配合使用。
                    如:
                       goto end
                       :end
                       echo this is the end
            :       这是标号字符(所在位是冒号),是用来执行被 goto 跳转所用的标号字符,
                    标号所在行是不会被执行,如:
                    :end 等等...

            choice  使用此命令可以让用户输入一个字符,从而运行不同的命令。使用时应该
                    加/c:参数,c:后应写提示可输入的字符,之间无空格。它的返回码为1234……
                    如: choice /c:dme defrag,mem,end
                    将显示
                    defrag,mem,end[D,M,E]?
                    例如,test.bat的内容如下:
                    @echo off
                    choice /c:dme defrag,mem,end
                    if errorlevel 3 goto defrag 应先判断数值最高的错误码
                    if errorlevel 2 goto mem
                    if errotlevel 1 goto end
                    :defrag
                    c:\dos\defrag
                    goto end
                    :mem
                     mem
                     goto end
                    :end
                    echo good bye
                    此文件运行后,将显示 defrag,mem,end[D,M,E]? 用户可选择d m e ,
                    然后if语句将作出判断,d表示执行标号为defrag的程序段,m表示执行
                    标号为mem的程序段,e表示执行标号为end的程序段,每个程序段最后都
                    以goto end将程序跳到end标号处,然后程序将显示good bye,文件结束。

            for     循环命令,只要条件符合,它将多次执行同一命令。
                    格式FOR [%%f] in (集合) DO [命令]
                    只要参数f在指定的集合内,则条件成立,执行命令
                    如果一条批处理文件中有一行:
                    for %%c in (*.bat *.txt) do type %%c
                    含义是如果是以bat或txt结尾的文件,则显示文件的内容。
            device和devicehigh
                    加载一些内存驻留程序,用于管理设备。比如内存管理程序和
                    光驱驱动程序等。
            如:    device=c:\dos\himem.sys
                    device=c:\dos\emm386.exe ram
                    devicehigh=c:\cdrom\cdrom.sys

            himem.sys和emm386.exe
                    DOS只能直接使用640K的内存,即基本内存,必须依靠其它内存管理程序来
                    使用更多的内存,这两条命令就是最常用的内存管理程序。
            himem.sys        负责管理扩展内存。
            emm386.exe        负责管理高端内存并在扩展内存中模拟扩充内存供某些软件使用。
                            为了使用更多的内存,配置文件中应有:
                            device=c:\dos\himem.sys
                            device=c:\dos\emm386.exe ram
                            注意:EMM386.exe 要求先安装 himem.sys,因而必须确保
                            安装 himem.sys 的配置命令在 emm386.exe 之前。
            dos=high,umb    这两个参数也可以分开写成两条语句,即:
                            dos=high
                            dos=umb
                            应在config.sys中加入这条命令,这样会将DOS的系统文件移入高端
                            内存,空出更多的基本内存给其它软件使用。 注意,如果用户没有
                            安装emm386.exe,umb这个参数是没有实际意义的
            lastdriver      lastdriver 规定用户可以访问的最大驱动器符数目,也就是DOS所能
                            识别的最后的驱动器符(字母)。如果设定的驱动器符数目小于本机上
                            的实际驱动器数,则此lastdriver命令会被忽略掉。缺省的最大驱动
                            器符数目为本机的实际驱动器数目加一。
            ::              二个冒号,它和批处理文件中的 rem 含义相同,即注释
            ramdrive.sys    虚拟磁盘文件。
                            只要在 config.sys 中加入 device=ramdrive.sys 就可使用虚拟磁盘了
                            比如:
                              device=c:\dos\ramdrive.sys 1024 /e
                            表示在扩展内存中建立 1M 的虚拟磁盘。如果加/a参数,则表示在扩充
                            内存中建立虚拟磁盘。
            %CDROM%         %CDROM%是光驱盘符的变量字符串,用它可以把所在的任意光驱盘符替为
                            真实盘符, 需要与光驱驱动模块一同执行,如:
                            LH \MSCDEX.EXE /D:mscd001 /L:%CDROM%
            %RAMD%          %RAMD%是随机虚拟磁盘, 此盘创建在扩展内存中, 建立此盘的模块就是
                            ramdrive.sys ,见上面的“虚拟磁盘文件”说明。
                            另外这个虚拟内在还有更强大的虚拟内存管理器,可以超过64MB的内存
                            管理,就是 XMSDSK.EXE 与 EMSDSK.EXE,

[ Last edited by shanliang8008 on 2007-7-13 at 06:04 PM ]

2007-7-13 17:55
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
rogers
初级用户





积分 34
发帖 14
注册 2007-7-27
状态 离线
『第 2 楼』:  

good

2007-7-27 20:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
30409
新手上路





积分 12
发帖 6
注册 2007-7-28
状态 离线
『第 3 楼』:  

感謝!!!

2007-7-28 12:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
huyujuen121
新手上路





积分 9
发帖 5
注册 2007-8-2
状态 离线
『第 4 楼』:  

不错不错啊。。

2007-8-3 16:06
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
pjyhl82
初级用户





积分 40
发帖 20
注册 2007-9-11
状态 离线
『第 5 楼』:  

感谢LZ的好贴!!

2007-9-11 22:17
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wenguoj2003
新手上路





积分 10
发帖 5
注册 2007-9-12
状态 离线
『第 6 楼』:  

感谢楼主的帖子

2007-9-16 11:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
shmilyxys
新手上路





积分 12
发帖 8
注册 2007-9-16
状态 离线
『第 7 楼』:  

thank you!!!!!!!

2007-9-18 20:26
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
chengchun
初级用户





积分 49
发帖 27
注册 2007-10-1
状态 离线
『第 8 楼』:  

好文章啊,真是太感谢你了,我收下了。

2007-10-1 14:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yuhao
新手上路





积分 8
发帖 5
注册 2007-9-22
状态 离线
『第 9 楼』:  

xiexie  verygood!

   此帖被 -1 点积分    点击查看详情   
评分人:【 分数: -1  时间:2007-10-18 14:24


2007-10-3 17:12
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: