🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: cn.bbs.comp.dos
Article #251

DOS�и߼��������

#251
From: ���
Date: Sun, 30 Nov 1997 00:00
159 lines
6889 bytes
����ѧд������(BATCH),��������������ʶ��DOS���������Ե�ǿ����.������

��,��������̫��,��߼�������������Զ,Ȼ��,���������������Ӻ�,��������

�����ֿ���.

    1.�������е��ӳ���

    ��������ĸ߼��������������ѳ��õ���̽����ɶ�����ģ�鼴�ӳ���,��

���˴���Ķ�����,ʹ����ģʽ��,������֯.���ٿ���˵DOS���������ȫ֧���ӳ�

��,�����κ�ʱ���㶼������GOTO��������ӳ���.

    ͨ��,GOTO�����õı�Ż����Խ��ܴ洢�ڻ��������еı��,��:

        SET LABELNAME=START

        GOTO%LABELNAME%

    ͨ�����ӳ���Ŀ�ʼ�滻��Ų����ӳ������ĵط�����GOTO %RETURN%���,��


������DOS���������н����ӳ���.ֻҪSET һ����������RETURN,��������������

��ר�õ����ӳ���.����,����Ը��Ÿ�ֵ������һ�е��ø��ӳ���,����GOTO���

�������ӳ���Ŀ�ʼ��,����ṹ��:

        REM This set the environment
        REM variable and calls the
        REM subroutine
        SET RETURN=HERE
        GOTO SUB
        HERE
        SUB
        REM
        Place subroutine statements
        REM below
        GOYO %RETURN%

    ���GOTO SUB���͵��ӳ���SUB,��SUB�������ִ���κ����.ִ����

GOTO%RETURN%ʱ,������ؿ��Ƶ���HERE,�򻷾�����RETURN������ֵΪHERE,�����

ÿ�ε���SUB�� �ð�һ�ı��(��RETURN),��ɶ�ζദ����SUB.

    2.��ȡ��������

    DOS ���������һ���ز�����ȱ��ֱ�ӴӼ��̶��������.�������DEBUG����һ

    ��СС�����������ֲ�,�������ı༭������������ļ� ������ΪINDEY.SCR

        N INKEY
        E 0100 B4 08 CD 21 C3 01 01 60
        E 0108 01
        RCX
        009
        W
        Q

    ʹ������DEBUG<NKEY.SCR���ɽ����ļ�INKEY.COM,��ɷ��ذ����ASC II��.��

��ɱ� DOS������IF ERRORLENEL�����.����ÿ���ַ��ASC II��ֵ����ͬ,ʹ��

INDEY����������ִ�Сд�ַ�.

    ���������������ڲ����DOS ��ʾ�����������ִ���κ�Ŀ¼��/��Ŀ¼��

����.����ʾ�㰴"Y"������"N"����.

        IF EXIST C:\%1\NUL GOTO EXISTS
        :ASK
        ECHO subdirectory does not exist
        ECHO Create it(Y\N)?
        INKDY
        IF ERRORLENEL   78 IF NOT ERRORLEVEL
                        79 GOTO END
        IF ERRORLEVEL   110 IF NOT ERRORLEVE
                         111 GOTO END
        IF ERRORLEVEL   89 IF NOT ERRORLEVEL
                        50 GOTO CREATEIT
       IF ERRORLEVEL   121 IF NOT ERRORLEVEL
                        122 GOTO CREATEIT
        GOTO ASK
        CREATEIT
        MD C:\%1
        GOTO END
        :EXISTS
        :EXISTS
        ECHO Directory exists!
        PAUSE

    :END INKEY��ͣ�������ִ��,ֱ���� ��һ��ASC II��ֵ �����õ�ERRORLEVEL

ֵ��ͬ,������N��n(ASC II��Ϊ78��110).ǰ������佫ת�����ļ� �Ľ�β��,ֵ��

ע��������IF ERRORLEVEL X IF NOT ERRORLEVEL X+1�Dz��Է�����x�ĸ�Ч�ֶ�.

�簴��Y��y,���������ת��CREATEIT.��������Щ���Ծ�ɹ�,��ת��ASK ,�ٴ���

ʾ"(Y/N)?"

    3.DOS�µ�ʱ����ʾ

    ����������Ļ���κ�ר���������ǰ��ɫ��ʾ���ں�ʱ��,�ɽ�������ļ� ¼��

������TIMER,BAT���.

        @E CHO OFF
        IF "%1"==""GOTO HELP
         GOTO OK
        :HELP
        ECHO SYNTAX:TIMER A B C D
        ECHO A=TEXT COLOR :30=BLACK 31=RED
                         32=GREEN  33=YELLOW
        ECHO                  34=BLUE   35=MAGENTA
                        36=CYAN   37=WHITE
        ECHO B=BACKGROUND:40=BALCK  41=RED
                        42=GREEN  43=YELLOW
        ECHO                  44=BLUE   45=MAGENTA
                        46=CYAN   47=WHITE
        ECHO C=R NUMBER
        ECHO D=COLUMN NUMBER
        GOTO EXIT
        :OK
        PROMPT $P$G$E[s$E[%1m$E[%2m$[E%3;%4H
        $d $t $E[37m$E[40m $E[u
        :EXIT

    �뽫ANSI.SYS װ��CONFIG.SYS��,���� A,B,C,D���Ժò����,��װ ��

AUTOEXEC��.BAT.����Ļ���Ͻ���ʾ��ɫ������ɫ���� ʱ�估���ֵ������:       GOTO OK
                        42=GREEN  43=YELLOW
        ECHO                  44=BLUE   45=MAGENTA
                        46=CYAN   47=WHITE
        ECHO C=R NUMBER
        ECHO D=COLUMN NUMBER
        GOTO EXIT
        :OK
        PROMPT $P$G$E[s$E[%1m$E[%2m$[E%3;%4H
        $d $t $E[37m$E[40m $E[u
        :EXIT

    �뽫ANSI.SYS װ��CONFIG.SYS��,���� A,B,C,D���Ժò����,��װ ��

AUTOEXEC��.BAT.����Ļ���Ͻ���ʾ��ɫ������ɫ���� ʱ�估���ֵ������:

        CALL TIMER.BAT 37 44 1 50

    4.ʹ����Ŀ¼����͸ı���������϶�Ϊһ

    ���� DOSKEY �꼰������ ��ʹ CD ������D;(DΪ��Ч������ ����ʶ��)���

--

--
�� ��Դ:���������� cs3.xmu.edu.cn��[FROM: 210.34.9.32]
Technical Details
Message-ID: <3LjKgS$3DX@cs3.xmu.edu.cn>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: Chinese,GB
X-Google-Thread: f8a76,5be6245751e9ea0e,start
X-Google-Attributes: gidf8a76,public
From: fbi.bbs@cs3.xmu.edu.cn (���)
Subject: DOS�и߼��������
Date: 1997/11/30
Message-ID: <3LjKgS$3DX@cs3.xmu.edu.cn>
X-Deja-AN: 293867286
X-Filename: dos/M.880913404.A
Organization: XMU CS BBS
Newsgroups: cn.bbs.comp.dos