Board logo

标题: [推荐]论坛DOS命令提示符界面的使用说明及命令详解 [打印本页]

作者: Wengier     时间: 2007-1-17 16:12    标题: [推荐]论坛DOS命令提示符界面的使用说明及命令详解

最近有一些用户询问论坛DOS命令提示符界面的基本使用方法,比如询问如何在命令行下回复帖子、短消息等,鉴于之前有关DOS命令提示符界面的介绍性内容分散在论坛一些不同的帖子中,而且命令提示符界面本身的帮助原为英文(3.4版本以后已支持多语言,包括简体和繁体中文),现在我将把DOS命令提示符界面中各命令详细的中文使用方法,以及常见操作问题进行汇总,整理成本帖(相当于用户指南)。论坛DOS命令提示符界面的地址如下,大家可以一边继续阅读一边使用:

http://www.cn-dos.net/forum/cmdprmt.php

==目录==
一、简要介绍
二、功能概述
三:常见操作
四、命令详解
五、开发说明

第一部分:简要介绍

论坛DOS命令提示符界面是中国DOS联盟论坛的Web命令行版本。它支持目前各种常见浏览器,包括Internet Explorer 5.5+、Mozilla Firefox 1.5+、Opera 9+,或者与它们完全兼容的浏览器。现在论坛DOS命令提示符已可以完成论坛GUI版可以完成的大多数基本功能,比如用户登录/登出、查看用户状态或资料、浏览帖子、编辑帖子、搜索帖子、订阅主题、收发短消息等等。除此之外,它还具有许多命令行所特有的功能,包括自由编写批处理文件等。它的使用方法和纯DOS及Windows下的CMD命令提示符十分相似,综合了这两种环境的主要优点,并结合了一些论坛特色,尤其是作为以讨论DOS为主的中国DOS联盟论坛的特色。通过命令行界面,用户可以通过一条命令或一系列命令来完成所想要的功能,包括简单和复杂的功能,而这些通常比使用GUI界面要高效和快捷得多。这也正是许多人研究和学习命令行、批处理的主要原因所在。同时,论坛DOS命令提示符支持多语言界面功能(包括简体中文、繁体中文和英文),默认起始语言为用户所用的浏览器的默认语言,并可以手工指定或随时在命令行上切换界面显示的语言(详见CHCP命令),以给予大家一个熟悉的语言环境。

第二部分:功能概述

论坛DOS命令提示符界面支持DOS/CMD环境下的大多数常见命令,以及一部分具有论坛特色的命令,可以用这些命令来直接访问和操作论坛。多数命令支持一些参数或开关,用户可以随时在命令行上输入HELP命令来查看命令列表和说明,以及用“HELP 命令名”或“命令名 /?”的形式来查看有关该命令的更多帮助。论坛DOS命令提示符界面所支持的命令包括两大类,一类为不需要提交到服务器的命令(有点类似于DOS的内部命令),另一类为需要提交到服务器的命令(有点类似于DOS的外部命令)。前者输入后将直接被执行,后者则将自动提交到服务器来执行,比如显示帖子、编辑帖子、收发短消息等。后者如果正常执行,返回的ERRORLEVEL值为0,否则返回的ERRORLEVEL值为1。如果接收的服务器响应不正确,则返回的ERRORLEVEL值为2。

论坛DOS命令提示符界面所用的许多概念和命令与DOS/CMD下的对应内容十分类似。DOS命令提示符界面中的文件根据其所处的文件系统相当于论坛中的主题、帖子,以及短消息等,目录相当于论坛版块,驱动器则相当于论坛分类及收件箱/发件箱等。里面的命令与DOS/CMD下的功能也十分类似,比如DIR命令可以查看文件和目录(帖子、版块、短消息等);DEL命令可以删除文件;REN命令可以重命名文件;TYPE和MORE命令可以显示文件(主题、帖子、短消息)的内容,其中MORE命令每显示主题中的一个帖子的内容后将提示按键继续以显示下一个帖子的内容,尤其在主题中帖子较多时可以大大便于帖子的阅读;EDIT命令可以发新主题、回复帖子,以及编辑帖子内容,比如EDIT C:\1命令表示C:\1这个版块发一个新主题,EDIT C:\1\2表示回复C:\1\2这个主题,而C:\1\2 3则表示编辑C:\1\2这个主题中的第3个回帖(其中3为帖子号,如果为0表示主题帖,1表示第1个回帖,以此类推,当为负数时则从最后一个帖子开始数起;而TYPE、MORE和FIND命令也可选地支持这种用法);NET SEND命令可以发送/回复短消息等等。另外,对于用户订阅的文件(用NET FILE命令),可以用类似~1的形式对文件实现更快速访问。更详细信息请见命令帮助以及下面的命令详解。

与加载了DOSKEY的DOS下以及CMD环境下类似,论坛DOS命令提示符支持命令行历史的功能,用户可以在随时命令行上按光标键或PageUp/PageDown键来编辑或重新调用以前输入过的命令,以大大方便命令行操作。使用HISTORY命令可以查看命令行历史。

论坛DOS命令提示符界面启动后的默认盘符为A(其它盘符则分别代表不同的版块或特殊功能,如C盘代表论坛站务区,D盘代表DOS技术区,G盘代表收件箱等,可以用DIR命令看到),并将自动设置一些环境变量,如%AUTOSUB%、%CODEPAGE%、%DIRCMD%、%OS%、%PROMPT%、%USERNAME%,分别代表是否自动订阅编辑过的文件(默认为1)、当前代码页(默认为936,即简体中文,可用CHCP 437命令改为英文)、DIR命令预先设定的开关(默认为/P /V,可自行修改)、用户所用的操作系统(如Windows、POSIX等)、提示符(默认为$P$G,可自行修改)、用户名(如果已经登录)。此外,当用户未手工设置%CD%、%DATE%、%TIME%、%RANDOM%、%ERRORLEVEL%这些环境变量时,它们分别代表当前路径、当前日期、当前时间、一个随机整数、当前ERRORLEVEL值,与CMD下一致。

许多用户喜欢个性化的环境,比如启动时自动选用自己喜欢的颜色、字体等等。论坛DOS命令提示符支持将命令(可以是除EDIT外的任何命令)存入A:\AUTOEXEC.BAT文件,这样每次启动时这些命令将自动运行。AUTOEXEC.BAT是自启动批处理文件,和DOS下类似,每次启动时都会自动运行。论坛DOS命令提示符界面中的AUTOEXEC.BAT文件是用户级的,不同的用户可以有不同的AUTOEXEC.BAT文件,用户只要登录即可使用。通过对它的合适修改(用EDIT命令),比如修改相应的环境变量、字体、行距、颜色、提示符、窗口标题等,用户可以达到个性化环境的目的。不仅如此,由于AUTOEXEC.BAT文件中的内容不会消失,利用它还可以完成类似收藏夹等功能。以下是一个简单的AUTOEXEC.BAT文件的例子:
@echo off
break on
rem 设置环境变量:
set dircmd=/a/p
set prompt=$t-$p$g
...
goto end

:end
echo 以下将修改字体、颜色和标题,可按Ctrl+C键取消
pause
if %os%#==Windows# font FixedSys
if %os%#==POSIX# font Terminal
font 10%%
color 06
title 我的DOS提示符
echo 开始运行..
除AUTOEXEC.BAT文件外,用户还可以在A盘上自由建立和编辑其它文件,相当于用户的个人文件存储空间(不同的用户可以建立不同的文件)。例如可以使用EDIT A:\HELLO.TXT命令在A盘上建立HELLO.TXT文件(如果已经存在将修改原有的文件),同时可以用其它命令来操作这些文件(和DOS/CMD下的命令相同,例如TYPE/MORE显示文件内容、DEL删除文件、REN重命名文件,等等)。对于批处理文件,用户可以直接像DOS/CMD下那样执行,并可使用诸如%0、%1、%2这样的可替换参数。

第三部分:常见操作

为了方便大家的快速入门和使用,下面列出一些常见操作的使用方法:

1:切换界面语言
可使用CHCP命令来切换当前语言代码页。例如CHCP 437将语言代码页切换为437(英文)、CHCP 936将语言代码页切换为936(简体中文)、CHCP 950将语言代码页切换为950(繁体中文)。

2:自定义界面
可使用FONT、COLOR、TITLE、PROMPT等一系列命令来定义命令提示符的界面,如更改字体、行距、颜色、窗口标题、提示符等。详见这些命令的使用说明。

3:查看帮助
所有命令均有相关的使用帮助,可在命令名后加上/?开关,或使用HELP [命令名]的形式来查看。如果直接输入HELP命令将列出所有命令。帮助信息显示的语言为当前代码页的语言。

4:登录/登出论坛:
以指定的用户名登录论坛:
NET LOGON 用户名 密码 (或NET LOGIN 用户名 密码)
登出当前用户:
NET LOGOFF (或NET LOGOUT)

5:列出论坛版块:
可直接在A盘下输入DIR命令以查看论坛中的所有版块,如果已登录将同时列出用户文件。
如果要列出指定分类中的版块,可在DIR命令后加上相应驱动器,例如DIR C:等。

6:列出版块中的主题列表:
可在DIR命令后加上相应驱动器及路径,例如C:\1等。如果要列出所有的主题,可加上/A开关。DIR命令的开关可用DIR /?查看,也可以在%DIRCMD%环境变量中指定。

7:显示主题内容:
可使用TYPE或MORE命令查看指定主题中的内容,例如TYPE C:\1\2(如果当前目录为C:\1的话可直接输入TYPE 2)。同时可以指定主题中显示的起始帖子和显示数量,详见TYPE或MORE命令的参数。

8:发帖/回帖或编辑帖子
这些均可使用EDIT命令来完成,如EDIT C:\1将在C:\1目录(版块)下建立新主题,EDIT C:\1\2将回复C:\1\2这个文件(主题),EDIT C:\1\2 3将编辑C:\1\2这个主题中的第3个帖子等。如果要引用回复,可以使用/R开关,例如EDIT C:\1\2 3 /R将引用回复C:\1\2这个主题中的第3个帖子。有关EDIT的开关的更多信息可用EDIT /?查看。
除此之外,EDIT命令还可以建立和编辑A盘下的用户文件。详见EDIT命令的使用说明。

9:搜索帖子
可使用FIND命令来搜索帖子的主题和内容。例如FIND "hello" C:\1将搜索C:\1目录(版块)下所有含有"hello"这个字符串的帖子。FIND命令支持许多开关,比如查找指定用户所发的帖子、显示匹配的行数、显示匹配帖子的所有行、忽略大小写搜索、只在主题中搜索字符串等,详情可用FIND /?查看。
除此之外,FIND命令还可以搜索A盘下的用户文件,以及用户短消息中的内容。

10:收发短消息
可使用NET SEND命令来发送短消息,用法是NET SEND 用户名。用户的收件箱和发件箱均为独立的驱动器,可以在A盘的驱动器列表中看到(收件箱为G盘,发件箱为H盘)。可以用DIR、TYPE/MORE、FIND等命令在这些驱动器中列出、查看、搜索短消息等,也可以用"NET SEND RE 文件名"的形式来引用回复短消息。

11:订阅主题
可使用NET FILE命令来查看当前订阅的主题。如要加入或删除订阅的内容,可分别加上ADD或DEL参数。详见NET命令的用法。

12:查看用户信息和状态
可分别使用NET USER和NET VIEW命令来查看指定用户的个人信息和在线状态。如果不加用户名将分别显示自己的用户信息和所有用户的在线状态。

13:查看论坛信息
可分别使用NET GROUP和NET STATISTICS(可简写为NET STATS)来查看论坛的用户组信息和论坛统计数据。

14:操作用户文件
可以用DIR、TYPE/MORE、EDIT、FIND、REN、DEL等命令来操作A盘上的用户文件(相当于用户的个人文件存储空间)。同时,用户还可以直接建立或执行BAT批处理文件。

第四部分:命令详解

在DOS命令提示符界面中输入HELP命令时可以看到以下命令:

BREAK、CD/CHDIR、CHCP、CLS、CMD、COLOR、DATE、DEL/ERASE、DIR、ECHO、EDIT、EXIT、FIND、FONT、GOTO、HELP、HISTORY、IF、MORE、NET、PAUSE、POPD、PROMPT、PUSHD、REM、REN/RENAME、SET、SHIFT、TIME、TITLE、TYPE、VER、VOL

可以在DOS命令提示符界面下使用“HELP 命令名”或“命令名 /?”的形式查看其帮助。这儿是这些命令的更详细说明:

BREAK
功能:设置或清除扩展的Ctrl+C检测。
用法:BREAK [ON | OFF]
说明:和DOS下类似,当BREAK为ON(默认值)的时候,用户可以在执行任何需要等待的命令、批处理文件中按Ctrl+C或Ctrl+Break命令来强行中断命令本身或批处理的执行。例如当执行DIR或PAUSE命令时按下Ctrl+C键将自动退回命令行,即使当DIR命令仍在发送时。相反,当BREAK为OFF时用户不能使用Ctrl+C或Ctrl+Break命令来强行中断命令本身或批处理的执行。另外,BREAK可以控制EDIT命令编辑文件内容时是否允许按Ctrl+C或Ctrl+Break键退出。
举例:BREAK (显示当前BREAK状态)
         BREAK ON (设置扩展的Ctrl+C/Ctrl+Break检测)
         BREAK OFF (清除扩展的Ctrl+C/Ctrl+Break检测)

CD(或CHDIR)
功能:显示和更改目录。
用法:CD [驱动器:][路径]
说明:和DOS/CMD下类似,此命令可以显示或修改当前路径。另外当参数只包括驱动器名的时候,此命令将进入指定驱动器,与SFTP下相同。CHDIR和CD命令的作用相同。
举例:CD (显示当前路径)
         CD .. (进入父目录)
         CD C:\1 (进入C:\1目录)

CHCP
功能:显示或设置活动代码页编号。
用法:CHCP [代码页]
说明:和DOS/CMD下类似,此命令可以显示或修改当前的活动代码页。此命令可用于切换命令提示符所用的语言,包括简体中文(936)、繁体中文(950)和英文(437或850),和CMD下一致。默认起始代码页根据浏览器的默认语言来自动选项,如当浏览器的默认语言为简体中文时起始代码页为936(简体中文),而当默认语言为繁体中文时起始代码页为950(繁体中文),否则的话起始代码页将为437(英文)。不过也可以通过在URL上加上?cp=xxx参数(其中xxx是要指定的代码页,如437)来将起始代码页设为相应的代码页。
举例:CHCP (显示当前代码页)
         CHCP 437 (将当前代码页和界面语言切换为英文)
         CHCP 936 (将当前代码页和界面语言切换为简体中文)
         CHCP 950 (将当前代码页和界面语言切换为繁体中文)

CLS
功能:清除屏幕。
用法:CLS
说明:和DOS/CMD下类似,此命令将清除屏幕上的内容。另外,也可以使用Ctrl+Del快捷键来达到同样的效果。
举例:CLS (清除屏幕)

CMD(或COMMAND)
功能:启动或刷新命令解释程序。
用法:CMD [/P]
说明:CMD命令在DOS命令提示符界面启动时自动调用,加上/P参数将自动执行A:\AUTOEXEC.BAT批处理文件中的命令。
举例:CMD /P (将执行A:\AUTOEXEC.BAT批处理文件中的命令)

COLOR
功能:设置命令提示符的颜色(前景和背景色)。
用法:COLOR [属性]
说明:和CMD下类似,COLOR命令的参数由两个16进制数字组成,分别设置DOS命令提示符界面的前景和背景色。如果不加参数的话将恢复默认值。
举例:COLOR 07 (或COLOR 7,将颜色设置为黑底白字,和COLOR默认值相同)

DATE
功能:显示当前日期。
用法:DATE
说明:此命令将显示当前日期。另外,当未手工设置%DATE%环境变量时,%DATE%将自动展开为当前日期,和CMD下一致。
举例:DATE (显示当前日期)

DEL(或ERASE)
功能:删除文件。
用法:DEL [驱动器:][路径]文件名 [帖子号]
说明:和DOS/CMD下类似,DIR命令用于删除文件。对于主题文件,用户必须有管理权限方可进行删除;对于短消息文件(即收件箱和发件箱中的内容),用户只需登录即可用此命令对其短消息进行清理。帖子号为0表示主题帖,1表示第一个回帖,以此类推。负数则表示从最后一个帖子开始数起。
举例:DEL C:\1\2 -1 (删除C:\1\2文件中的最后一个帖子)
         DEL G:\3 (删除G盘上的3这个文件/短消息)

DIR
功能:显示目录内容。
用法:DIR [驱动器:][路径][文件名] [offset,amount] [/A[[:]属性]] [/B] [/C] [/P] [/S] [/V[[:]属性]]
说明:和DOS/CMD下类似,DIR命令通常用于显示指定目录下的文件及其信息。可以用offset,amount来控制范围,如10,20表示从第10个文件开始,共显示20个文件,默认为0,22,即前22个文件,可以通过offset,amount参数或/A开关来调整。DIR命令支持以下开关:
/A:列出所有带有指定属性的文件。(而默认则只显示前22个文件)
/A开关的属性可以是(如果未指定则表示所有):
A  附件           C  关闭/锁定      D  驱动器/目录
G  精华           H  热门             N  新
O  普通           P  投票             T  置顶
/B:只显示文件名
/C:显示文件/目录的建立日期/时间(默认则为显示最后修改日期/时间)
/P:分屏显示(每显示25个文件后提示按Enter键继续,或者按ESC或Q键退出)
/S:也显示子目录下的内容
/V:视图定制模式。所有关于指定的项目的信息将被显示,如果可能的话。
/V开关支持的项目可以是(如果未指定则表示所有):
A  属性             D  日期/时间      I  ID
N  名称/标题      P  发帖人/版主   R  记录

另外为了兼容性而保留了一个/W开关,但将被忽略。
/A和/V开关的属性可以随意结合,以显示相应的内容。开关和选项之间可以加上一个冒号间隔,也可以省略,比如/AFG和/A:FG的作用相同。使用/V开关可以显示文件/主题的属性、查看数、回复数、作者、发帖人,版块的文件及帖子总数、版主等信息。用户可使用/V开关的各种属性来自定义显示风格,比如可以不显示某些信息以节省屏幕空间等。其中,文件的属性可以是<DIR>(目录/版块)、<顶>(置顶帖)、<新>(新帖或新消息)、<精>(精华帖)、<票>(投票帖)、<锁>(关闭/锁定的帖子)、<热>(热门帖子)、<附>(带附件的帖子)。
如果在开关前加上-字符(如/-A、/-V等)则表示取消该开关。除在命令行上使用外,也可以在%DIRCMD%环境变量中来预先指定这些开关。%DIRCMD%的默认值为/P /V,可以用SET命令修改,或者在命令行下加上-字符(如/-V)来取消指定的开关。除%DIRCMD%的默认值外,这些均与DOS/CMD下一致。
举例:DIR A: /B (只显示A盘上的所有文件的名称)
         DIR C:\1 /AHT /P (分屏显示C:\1下的所有置顶或热门文件/帖子)
         DIR C:\1 20,30 (显示C:\1下的文件,从第20个文件开始,共显示30个文件)
         DIR C: /A/S/-V (显示C盘上的所有文件,包括子目录下的内容,但不显示详细信息,如发帖人等)

ECHO
功能:显示文字,或者打开和关闭命令回显。
用法:ECHO [ON | OFF] 或 ECHO [文字]
说明:和DOS/CMD下类似,ECHO可用于显示指定的文字,也可用于显示或设置命令回显。当ECHO为ON的时候,系统将回显当前提示符和命令。当ECHO为OFF时则相反。通常在批处理文件中加入@ECHO OFF即可使系统不显示批处理文件中执行的命令。
举例:ECHO (显示当前ECHO状态)
         ECHO 大家好!(显示“大家好!”)
         ECHO. (显示一空行)
         ECHO ON (打开命令回显)
         ECHO OFF (关闭命令回显)

EDIT
功能:启动文件编辑器,以创建和编辑文件文件,可用于发帖、回帖、改帖等。
用法:EDIT [驱动器:]路径 | [驱动器:][路径]文件名 [帖子号] [/D] [/I] [/R] [/S] [/T] [/U]
说明:和DOS/CMD下类似,EDIT命令可用于编辑文件。用户必须登录以使用此命令。路径既可以是相对路径也可以是绝对路径。如果未指定文件名,则表示在指定路径下建立新文件(即发新主题),否则表示编辑该文件(包括回帖、改帖)。如果指定了帖子号的话,EDIT将打开主题中的相应帖子以让用户进行编辑(即编辑帖子),否则表示在主题中回帖。帖子号为0表示主题帖,1表示第一个回帖,以此类推。负数则表示从最后一个帖子开始数起。EDIT命令也可用于建立或修改A盘上的文件,例如A:\AUTOEXEC.BAT批处理文件。另外,如果%AUTOSUB%环境变量的值为正数时,编辑过的文件(主题)将自动被订阅。
EDIT命令支持以下开关:
/D:禁用 Discuz! 代码(默认为启用)。
/I:忽略帖子的积分和时间限制。
/R:在文件中引用回复帖子(如果未指定帖子号则默认为回复主题帖)。
/S:不使用个人签名(默认为使用)。
/T:编辑帖子时在帖子后自动附加编辑日期和时间。
/U:禁用 URL 识别(默认为启用)。

举例:EDIT A:\AUTOEXEC.BAT (编辑A:\AUTOEXEC.BAT文件)
         EDIT C:\1 (在C:\1这个版块下发新主题)
         EDIT C:\1\2 (在C:\1\2这个主题下回帖)
         EDIT C:\1\2 1 /T (编辑C:\1\2这个主题下的第1个回帖,并在帖子后自动附加编辑日期和时间)
         EDIT C:\1\2 2 /R (引用回复C:\1\2这个主题下的第2个回帖)
         EDIT C:\1\2 -2 /S (编辑C:\1\2这个主题下的倒数第二个回帖,且不使用个人签名)

EXIT
功能:返回图形界面。
用法:EXIT
说明:此命令将返回论坛的图形界面。
举例:EXIT (返回图形界面)

FIND
功能:查找文件中的指定文字。
用法:FIND "字符串" [驱动器:]路径 | [驱动器:][路径]文件名 [帖子号] [offset,amount] [/A] [/C] [/I] [/N] [/S] [/U] [/V]
说明:路径用于指定查找文件的范围,如果不指定文件名则将查找该路径中的所有文件,也可以用offset,amount来控制范围(和DIR命令的一样,如10,20表示从第10个文件开始,共查找20个文件;如不指定则表示所有文件)。如果指定了帖子号的话,FIND将只从文件(主题)中的指定帖子中查找,否则从主题中的所有帖子中进行查找。帖子号为0表示主题帖,1表示第一个回帖,以此类推。负数则表示从最后一个帖子开始数起。字符串即要查找的字符串,用引号括起来,里面可以有空格,默认将显示文件中所有匹配该字符串的行,但可以通过开关来进行调整(多数与DOS/CMD下的一致):
/A:显示带有指定字符串的帖子中的所有行
/I:忽略字符串的大小写
/C:仅显示文件中匹配该字符串的行数
/N:仅显示匹配该字符串的文件名
/S:仅在标题中搜索字符串
/U:显示指定用户发的帖子的内容(如帖子号为0表示仅查找并显示指定用户发的主题帖,默认则从主题帖和所有回复帖中寻找)
/V:仅显示不匹配该字符串的所有行。
举例:FIND "ECHO" A:\AUTOEXEC.BAT /V (查找并显示A:\AUTOEXEC.BAT文件中所有不含ECHO这个字符串的行)
         FIND "hello" C:\1\2 /N (在C:\1\2文件中查找hello这个字符串,如果包含此字符串将显示这个文件名)
         FIND "USER" C:\1 0 /U /I (在C:\1目录下查找所有由USER发的主题,并且不区分用户名的大小写)
         FIND "HELLO" C:\8 0,20 4 /A/I/N (在C:\8目录下的前20个文件中,查找并显示包含HELLO这个字符串且为第4个回帖的所有帖子,并且不区分大小写)

FONT
功能:显示所有可用的字体,或更改当前字体。
用法:FONT LIST 或 FONT [字体] 或 FONT [数值%]
说明:FONT LIST可显示所有可用的字体的列表,FONT [字体]将更改当前字体。字体既可以是字体名也可以是它所对应的ID(即用FONT LIST命令所看到的ID),比如可用1代表Courier,2代表FixedSys(CMD下的默认字体)等等。FONT [数值%]则用于设置行距,其中数值的范围为0-100之间。
举例:FONT (显示当前字体)
         FONT LIST (显示所有可用的字体)
         FONT FixedSys (将当前字体更改为FixedSys,与FONT 2的作用相同)
         FONT 50% (将行距设置为50%)

GOTO:
功能:在批处理中跳转到一个指定的标号上。
用法:GOTO 标号
说明:和DOS/CMD下类似,GOTO命令将使批处理文件跳转到提定的标号上。另外如果使用GOTO :EOF将自动跳转到批处理文件结束,和CMD下一致。
举例:GOTO next (假设批处理文件中已有:next这一行,GOTO next将跳转到此行)

HELP
功能:提供命令的帮助信息。
用法:HELP [命令名]
说明:和CMD下类似,HELP命令将显示指定命令的帮助,或者也可以使用更简单的“命令名 /?”这样的形式。如果不加参数的话HELP命令将显示所有命令的列表。
举例:HELP (显示命令列表)
         HELP DIR (显示DIR命令的帮助,与DIR /?作用相同)

HISTORY
功能:显示命令行历史。
用法:HISTORY
说明:此命令将显示用户在DOS命令提示符界面中输入的命令。可以使用方向键和PageUp、PageDown来调用之前输入的命令,与加载了DOSKEY的DOS下和CMD下一致。
举例:HISTORY (显示命令行历史)

IF
功能:完成条件性处理。
用法:IF [NOT] ERRORLEVEL 数值 命令
         IF [NOT] 字符串1==字符串2 命令
         IF [NOT] EXIST 文件名 命令
说明:和DOS/CMD下类似,IF命令用于条件判断,包括判断当前ERRORLEVEL值是否大于或等于指定数值、指定字符串是否相等、指定文件是否存在。NOT表示否定。另外,IF命令通常可以嵌套。
举例:IF NOT ERRORLEVEL 1 ECHO 成功!(当ERRORLEVEL为0的时候显示指定信息)
         IF %USERNAME%==Hello DIR (当%USERNAME%为Hello时运行DIR命令)
         IF EXIST C:\1\2 TYPE C:\1\2 (当存在C:\1\2文件时显示该文件内容)
         IF ERRORLEVEL 1 IF NOT ERRORLEVEL 2 PAUSE (当ERRORLEVEL正好为1的时候暂停)

MORE
功能:显示文件内容,每显示一个帖子后提示按任意键继续以显示下一个帖子。
用法:MORE [驱动器:][路径]文件名 [帖子号] [/A] [/D] [/P] [/S]
说明:MORE命令和TYPE命令十分相似,但MORE命令每显示一个帖子中的内容后将提示按Enter键继续以显示下一个帖子中的内容,或者按ESC或Q键退出。路径既可以是相对路径也可以是绝对路径。如果指定了帖子号的话,MORE将只显示主题中的相应帖子,否则将显示主题中的所有帖子。帖子号为0表示主题帖,1表示第一个回帖,以此类推。负数则表示从最后一个帖子开始数起。开关/A、/D、/P、/S分别用于不显示附件、禁用 Discuz! 代码、不显示投票结果、不显示个人签名,用法和TYPE命令一致。
举例:MORE A:\AUTOEXEC.BAT (显示A:\AUTOEXEC.BAT文件内容)
         MORE C:\1\2 (显示C:\1\2这个主题中的所有帖子,每显示一个帖子中的内容后将提示按键继续以显示下一个帖子中的内容)
         MORE C:\1\2 3,4 /S (从C:\1\2这个主题的第3个回帖开始显示4帖子,并且不显示个人签名)

NET
功能:管理当前用户。
用法:NET [ GROUP | LOGOFF | STATISTICS | TIME ]
         或 NET FILE [ADD|DEL(ETE) 文件名]
         或 NET LOGON 用户名 密码
         或 NET SEND [[TO] 用户1,[用户2...]
         或 NET SEND FOR|RE [驱动器:][路径]文件名 [帖子号]
         或 NET USER [用户名]
         或 NET VIEW [用户名]
说明:NET命令用于操作当前用户,包括用户登录/登出、显示用户状态和资料、订阅主题、发送短消息等等。它支持许多命令名以实现不同的操作(如果不加参数且已经登录则将显示当前用户名),例如:
NET FILE:显示、加入或取消订阅的文件/主题(订阅的文件可以快速进行访问,比如可直接用TYPE ~2来显示C:\1\2这个已订阅的文件中的内容;TYPE ~+1可以直接显示最新更新的订阅文件的内容,等等);
NET GROUP:显示论坛中所有的用户组,以及它们的积分要求等;
NET LOGON:用指定的用户名和密码登录,十分快捷方便;
NET LOGOFF:登出当前用户;
NET SEND:给用户发送短消息,用户名可以直接在命令行上指定(如果有多个用户可用逗号分隔,如NET SEND TO 用户1,用户2,其中TO可以省略;对于版主或管理员还可以指定*号以发送给所有用户),或者将发送短消息给指定文件(帖子/短消息)的作者,如NET SEND FOR C:\1\2或NET SEND RE C:\1\2,其中后者可以用于引用回复对方的短消息;
NET STATISTICS(可简写为NET STATS):显示论坛统计数据,例如发帖情况等;
NET TIME:显示当前服务器时间和用户上次登录时间;
NET USER:显示指定用户的级别、积分、时间等信息,默认为当前用户;
NET VIEW:显示用户在线列表,可以指定用户名以显示指定用户的在线情况。

举例:NET (显示当前用户名,如果已经登录)
         NET LOGON user password (使用user这个用户名和password这个密码来登录)
         NET LOGOFF (登出当前用户)
         NET FILE(显示用户订阅的文件)
         NET FILE C:\1\2(订阅文件C:\1\2)
         NET GROUP(显示论坛中所有的用户组)
         NET TIME (显示当前服务器时间和用户上次登录时间)
         NET SEND a,b(给用户a和b发送短消息)
         NET SEND RE C:\1\2(给C:\1\2文件的作者发送/回复短消息)
         NET STATS (显示论坛统计数据)
         NET USER abc(显示用户abc的信息)
         NET VIEW(显示用户在线列表)

PAUSE
功能:暂停命令。
用法:PAUSE
说明:和DOS/CMD下类似,PAUSE命令将暂停命令的执行并显示一行文字。当在批处理中执行且BREAK为ON的时候,用户此时可以按Ctrl+C或Ctrl+Break键来中断批处理文件。
举例:PAUSE (暂停)

POPD
功能:还原之前由PUSHD命令保存的目录。
用法:POPD
说明:和CMD下类似,POPD命令将还原由PUSHD命令上次保存的目录。
举例:POPD (还原上次由PUSHD命令保存的目录)

PROMPT
功能:修改命令提示符。
用法:PROMPT [文字]
说明:和DOS/CMD下类似,PROMPT将修改DOS命令提示符界面的提示符。它支持以下特殊字符:
$A   &字符
$B   |字符(管道符号)
$C   (字符(正括号)
$D   当前日期
$F   )字符(反括号)
$G   >字符(大于号)
$H   退格(清除前一个字符)
$L   <字符(小于号)
$N   当前驱动器
$P   当前驱动器和路径
$Q   =字符(等号)
$S   空格
$T   当前时间
$V   系统版本号
$$   $字符
默认值为$P$G。当不加参数时,PROMPT将恢复为默认值。除直接使用PROMPT命令来修改提示符外,也可以通过%PROMPT%环境变量来修改,这些均与DOS/CMD下一致。
举例:PROMPT %USERNAME%: $P$G (在命令提示符前面包含用户名)

PUSHD
功能:保存当前目录然后改变目录。
用法:PUSHD [驱动器:][目录]
说明:和CMD下类似,此命令将保存当前目录,然后进入指定的目录(类似CD命令)。其后可以用POPD命令还原到所保存的目录。不带参数的PUSHD命令将显示上次保存的目录(如果有的话)。
举例:PUSHD C:\1 (保存当前目录并将目录改为C:\1)

REM
功能:加上注释。
用法:REM [注释]
说明:和DOS/CMD下类似,此命令中的内容将被忽略,但可以增加批处理文件的易读性。
举例:REM 开始运行.. (简单的注释)

REN(或RENAME)
功能:重命名文件。
用法:REN [驱动器:][路径]文件名1 文件名2
说明:和DOS/CMD下类似,REN命令可用于重命名文件。其中文件名1为原名,文件名2为新名。文件名2的路径将和文件名1的路径相同。
举例:REN A:\FILE1.TXT FILE2.TXT (将文件FILE1.TXT更名为FILE2.TXT)

SET
功能:显示、设置和删除环境变量。
用法:SET [变量名=[字符串]]
说明:和DOS/CMD下类似,当不加参数的时候,SET命令将显示当前所有的环境变量,否则将把指定变量名的值设置为指定的字符串,或者如果未指定字符串时将删除该变量名。另外,如果参数中只包含变量名而不包含等号和字符串时,SET命令将显示所有以该变量名开头的环境变量;当未手工设置%CD%、%DATE%、%TIME%、%RANDOM%、%ERRORLEVEL%环境变量时,它们将分别自动展开为当前路径、当前日期、当前时间、一个随机整数、当前ERRORLEVEL值,这些均与CMD下一致。
举例:SET (显示所有变量)
         SET A=B (将%A%的值设为B)
         SET A= (删除环境变量%A%)
         SET C (显示所有以C开头的环境变量)

SHIFT
功能:更改批处理文件中可替换参数的位置。
用法:SHIFT
说明:和DOS/CMD下类似,SHIFT命令该对批处理文件中的每个可替换参数向前移一位,例如%1将变成%0、%2将变成%1等,以存取多于10个命令行参数。可以多次使用此命令以移动多个位置。
举例:SHIFT (将可替换参数向前移一位)

TIME
功能:显示当前时间。
用法:TIME
说明:此命令将显示当前时间。另外,当未手工设置%TIME%环境变量时,%TIME%将自动展开为当前时间,和CMD下一致。
举例:TIME (显示当前时间)

TITLE
功能:设置命令提示符的窗口标题。
用法:TITLE [标题]
说明:和CMD下类似,此命令可以设置DOS命令提示符界面的窗口名称。如果不加参数的话将恢复默认值。
举例:TITLE 我的命令提示符 (设置窗口标题为“我的命令提示符”)

TYPE:
功能:显示文件内容(即查看主题中的帖子内容)。
用法:TYPE [驱动器:][路径]文件名 [帖子号[,数量]] [/A] [/D] [/P] [/S]
说明:和DOS/CMD下类似,TYPE命令将一次性显示指定文件(主题)中的内容。路径既可以是相对路径也可以是绝对路径。如果指定了帖子号的话,TYPE将只显示主题中的相应帖子,否则将显示主题中的所有帖子。帖子号为0表示主题帖,1表示第一个回帖,以此类推。负数则表示从最后一个帖子开始数起。数量可以用于指定从指定帖子号开始显示的帖子数量,如果为负数则表示显示至文件的倒数第"数量"个帖子(-1即文件的末帖),如果不指定数量则默认为1,作用和EDIT、FIND等命令一致。例如TYPE C:\1\2 3,-1表示从C:\1\2这个文件的第3个回帖开始显示到最后一个帖子。开关/A、/D、/P、/S分别用于不显示附件、禁用 Discuz! 代码、不显示投票结果、不显示个人签名。
举例:TYPE A:\AUTOEXEC.BAT (显示A:\AUTOEXEC.BAT文件内容)
         TYPE C:\1\2 (显示C:\1\2这个主题中的所有帖子)
         TYPE C:\1\2 3 (显示C:\1\2这个主题中的第3个回帖)
         TYPE C:\1\2 -1 (显示C:\1\2这个主题中的最后一个帖子)
         TYPE C:\1\2 4,2 (从:\1\2这个主题中的第3个回帖开始显示2个帖子)
         TYPE C:\1\2 5,-1 /A /S (显示C:\1\2这个主题中从第5个回帖开始的所有帖子,但不显示附件和个人签名)

VER:
功能:显示系统版本。
用法:VER
说明:和DOS/CMD下类似,此命令将显示系统版本。另外此命令有一个隐藏参数/R,可用于显示更多信息,和DOS下一致。
举例:VER (显示版本)

VOL
功能:显示磁盘卷标和序列号。
用法:VOL [驱动器:]
说明:和DOS/CMD下类似,此命令将显示指定驱动器的卷标和序列号。如果不加参数的话将显示当前驱动器的卷标和序列号。
举例:VOL D:(显示D盘的卷标和序列号)

此外还有一个隐藏命令TRUENAME(和纯DOS下相同),并支持某些Unix形式的命令,如LS、CAT、PWD、CLEAR等。

第五部分:开发说明

论坛DOS命令提示符界面由中国DOS联盟的Wengier和Roy编写(开始由Roy制作至Alpha 1.25版,其后主要由Wengier进行更新,至目前的4.0版本)。从最初的Alpha测试版,历经很多的中间测试版本,通过不断的测试、改进到现在的正式版本。欢迎大家提出各项建议,使其不断完善,并在此特别感谢qzwqzw、asbai、tigerpower、electronixtar等网友的支持或改进建议。

当DOS命令提示符界面出现新版本时,本帖也将相应更新,以及时反映最新内容。

3.0正式版以来的主要版本更新历史:

4.0版:重写多语言接口并加入950(繁体中文)代码页(可自动根据浏览器的默认语言来选择起始代码页)、加入TYPE/MORE命令的/A、/D、/P、/S开关、加入EDIT命令的/D、/I、/R、/S、/T、/U开关以支持更多编辑功能、NET SEND命令可以引用回复短消息、TYPE/MORE命令支持显示附件/帖图/投票结果/个人签名、支持A盘上自由建立/修改/查看/查找/删除文件、可以运行自定义的批处理文件并支持可替换参数功能、加入REN命令重命名文件、加入SHIFT命令更改批处理文件中的可替换参数的位置、支持Ctrl+Del快捷键清屏,以及其它一些小修改。
3.9版:加入DEL、PUSHD、POPD命令、加入TYPE/MORE命令的帖子显示数量控制、加强EDIT命令权限管理,以及其它一些小修改。
3.8版:加入新驱动器--发件箱、加入文件订阅功能及NET FILE命令管理订阅的文件、加入NET GROUP命令显示所有的用户组、加入NET STATISTICS命令显示论坛统计数据、NET USER和NET VIEW命令支持指定用户名、增强NET SEND命令以支持直接回复指定文件/帖子的作者、FIND命令支持搜索收件箱/发件箱内的文件(短消息)中的内容,以及其它一些小修改。
3.7版:加入新驱动器--收件箱以阅读短消息、NET SEND命令以发送短消息、NET VIEW命令查看用户在线列表,以及其它一些小修改。
3.6版:加入DIR命令的/C开关、同时加入/A和/V开关的各种属性/项目、BREAK命令可以控制EDIT命令是否允许按Ctrl+C键退出,并使当命令行失去焦点的情况下按键可自动恢复命令行,以及其它一些小修改。
3.5版:加入FIND命令的/S开关、加入DIR命令的/W开关、可以用/V开关显示回复数/查看数/帖子数、加强对未授权用户访问版块的限制,以及其它一些小修改。
3.4版:加入CHCP命令和中英文代码页/双语界面支持、允许IE和Firefox下将帖子的code部分复制到剪贴版,以及其它一些小修改。
3.3版:加入COLOR、TITLE命令、改进TYPE/MORE命令的空行处理、解决批处理的一些问题,以及其它一些小修改。
3.2版:加入GOTO命令和标签功能,并使得批处理文件中可以执行除EDIT外的所有命令(而不仅仅是不需要提交到服务器的命令),以及其它一些小修改。
3.1版:加入IF、BREAK命令、解决IE下显示全角空格、DIR的/A开关和PROMPT的$T的一些问题,以及其它一些小修改。
3.0版:加入FIND命令、支持负数作为帖子号、增加%OS%环境变量等,以及其它一些小修改。
作者: qzwqzw     时间: 2007-1-17 22:30
good!

不过,我最早的想法是命令行做成多语言版

使用chcp切换语言版本

不过考虑到可能需要到大动内核

自己也没有过于强烈的需要

所以后来也就不了了之了
作者: lxmxn     时间: 2007-1-18 00:01

  很好啊,支持!

作者: Wengier     时间: 2007-1-18 04:30


  Quote:
Originally posted by qzwqzw at 2007-1-17 09:30 AM:
good!

不过,我最早的想法是命令行做成多语言版

使用chcp切换语言版本

不过考虑到可能需要到大动内核

自己也没有过于强烈的需要

所以后来也就不了了之了

今天早上我也突然想到了这个,没想到我们居然想到一块儿去了:-) 不过,当时也只是突然的想法而已,本来没打算真正实施的,但看到这个帖子后,决定去试试看。主要的难点在于需要汉化的内容太多,汉化程度要想达到100%似乎相当困难。先试试这个版本吧(比如输入chcp 936看看):

http://www.cn-dos.net/forum/cmdprmt.php
作者: electronixtar     时间: 2007-1-18 04:33
支持 export lang=zh_CN.UTF-8 不?
作者: qzwqzw     时间: 2007-1-18 05:14
better!

简单看了一下

没有发现不妥的地方

如果觉得比较完善了

建议将缺省代码页设为936

437或其他代码页由用户自己在Autoexec.bat中定制
作者: tigerpower     时间: 2007-1-18 08:24
建议此帖置顶!
此外,能否有一个类似于“WhatsNew”的文档,使老用户能快速得知新版本的新功能。
作者: vkill     时间: 2007-1-18 08:33
不知道命令行的是怎么写的,想知道这个
作者: Wengier     时间: 2007-1-18 17:20


  Quote:
Originally posted by qzwqzw at 2007-1-17 04:14 PM:
better!

简单看了一下

没有发现不妥的地方

如果觉得比较完善了

建议将缺省代码页设为936

437或其他代码页由用户自己在Autoexec.bat中定制

刚才对它作了比较全面的汉化,现在已将默认代码页设为936。不过用户可以在URL中加上参数以强制将起始代码页指定为437,比如:

http://www.cn-dos.net/forum/cmdprmt.php (起始代码页将为默认值936)
http://www.cn-dos.net/forum/cmdprmt.php?cp=437 (起始代码页将为437)

同时,在AUTOEXEC.BAT或命令行上可随时用CHCP命令切换代码页和界面语言。在批处理文件中可以用%CODEPAGE%环境变量来判断当前代码页。

------

  Quote:
Originally posted by tigerpower at 2007-1-17 07:24 PM:
建议此帖置顶!
此外,能否有一个类似于“WhatsNew”的文档,使老用户能快速得知新版本的新功能。

嗯,等全文写好后就置顶吧。我刚才已在顶楼的开发说明部分加上了有关最新3.4版的简要更新说明,同样以后版本的更新历史也将被记载下来。以前的版本可能就没有办法了。

------

  Quote:
Originally posted by vkill at 2007-1-17 07:33 PM:
不知道命令行的是怎么写的,想知道这个

不太明白您是指什么?
作者: qzwqzw     时间: 2007-1-18 23:04    标题: 一个小问题

发现一个小问题

在type或者more完一些帖子(如26674#4)后

显示中的缩进没有完全恢复

如果反复type d:\23\26674 4会将缩进效果不断累积

猜测是因为帖子中使用了未闭合或者错误的Discuz! 代码

作者: Wengier     时间: 2007-1-19 01:15


  Quote:
Originally posted by qzwqzw at 2007-1-18 10:04 AM:
发现一个小问题

在type或者more完一些帖子(如26674#4)后

显示中的缩进没有完全恢复

如果反复type d:\23\26674 4会将缩进效果不断累积

猜测是因为帖子中使用了未闭合或者错误的Discuz! 代码

我先在IE7和Firefox下试着看这个帖子,但没发现问题。随后在Opera 9下测试,才发现出现这种情况。可见是Opera浏览器上特有的现象。

然后我看了一下,发现正是发帖人未正确使用Discuz!代码造成的。他首先使用了[ size=3 ]代码,但并未使用[ /size ]来关闭,而是在最后使用了[ /size=3 ]这种不正确的形式,造成实际上代码未闭合,引发Opera浏览器无法正确解析才出现问题。于是,我采取了在程序中强行加上关闭字体调节的标签的方法,这样在Opera上应该就不会出现这种现象了,可以再试试看:

http://www.cn-dos.net/forum/cmdprmt.php
作者: Wengier     时间: 2007-1-19 18:36
现在文章的功能简介和基本操作两大部分已完成,并凭印象写下了3.0正式版以来的更新历史。不久将根据lxmxn的建议置顶,希望大家使用前先阅读一下。如果有什么问题或建议,也请在这儿跟帖。

另外命令提示符中昨天余下的最后一点内容也已全部汉化完成。
作者: willsort     时间: 2007-1-20 09:05
Re Wengier:

      真是很有特色的一个界面,希望兄能继续将它发扬光大。

      不久前曾初步体现了一下,功能已相当完备。但若要与GUI的WEB界面相抗衡,还需要更多发掘CLI所具有的一些独特应用,比如自由脚本的实现,管道与重订向的实现,变量的高级应用,客户端程序的引用等等,也可以结合网络与论坛特色开发出一些功能,比如对外部的网站与论坛的数据接口。

      当然,我也深知这些需求过于缥缈了些,因为自身欠缺WEB开发的实际经验,无法助兄一臂之力,以上建议纯属浮泛而谈,兄酌情处之吧。

      另:发现使用find无法仅对主题标题进行搜索,而使用全文搜索时,感觉会比较消耗网络与服务器资源。而dir的结果,无法获知哪些是新回复的主题。
作者: Wengier     时间: 2007-1-20 22:07


  Quote:
Originally posted by willsort at 2007-1-19 08:05 PM:
Re Wengier:

      真是很有特色的一个界面,希望兄能继续将它发扬光大。

      不久前曾初步体现了一下,功能已相当完备。但若要与GUI的WEB界面相抗衡,还需要更多发掘CLI所具有的一些独特应用,比如自由脚本的实现,管道与重订向的实现,变量的高级应用,客户端程序的引用等等,也可以结合网络与论坛特色开发出一些功能,比如对外部的网站与论坛的数据接口。

      当然,我也深知这些需求过于缥缈了些,因为自身欠缺WEB开发的实际经验,无法助兄一臂之力,以上建议纯属浮泛而谈,兄酌情处之吧。

      另:发现使用find无法仅对主题标题进行搜索,而使用全文搜索时,感觉会比较消耗网络与服务器资源。而dir的结果,无法获知哪些是新回复的主题。  

首先十分感谢willsort的想法和建议!

现已给FIND命令加上/S参数,可以仅对标题进行搜索;而且DIR命令在verbose模式下将显示主题的查看和回复数,以便于确定是否有新回复。

关于管道与重定向、客户端程序的引用等,由于实现起来相当复杂,所以可能需要缓一下。不过我会将它们记下来,等有条件的时候再来分别解决。
作者: namejm     时间: 2007-1-20 23:21
  dir 功能的增强,方便了有价值帖子的收集,不过我还想让它使用起来能更方便一点,不知道能否实现:现在的dir命令加上 /a 参数之后,同一条记录将分成两行折行显示,若要按照标题及回帖数量再参考点击率来编一段脚本提取有价值的帖子的话,因为存在大量的奇偶行判断,代码的效率将不甚理想,若能把同一条记录显示在同一行上的话,就比较方便了。但是这样一来的话,在网页中就有可能需要增加水平滚动条(是这样称呼的么?对网页框架的术语不太懂,汗=_=!)来显示完整内容,有可能给网页浏览带来一些不便。这该如何取舍是好?

[ Last edited by namejm on 2007-1-20 at 10:22 AM ]
作者: Wengier     时间: 2007-1-21 01:01


  Quote:
Originally posted by namejm at 2007-1-20 10:21 AM:
dir 功能的增强,方便了有价值帖子的收集,不过我还想让它使用起来能更方便一点,不知道能否实现:现在的dir命令加上 /a 参数之后,同一条记录将分成两行折行显示,若要按照标题及回帖数量再参考点击率来编一段脚本提取有价值的帖子的话,因为存在大量的奇偶行判断,代码的效率将不甚理想,若能把同一条记录显示在同一行上的话,就比较方便了。但是这样一来的话,在网页中就有可能需要增加水平滚动条(是这样称呼的么?对网页框架的术语不太懂,汗=_=!)来显示完整内容,有可能给网页浏览带来一些不便。这该如何取舍是好?

我刚才已给DIR加上了一个/W开关,这个开关和现有的/V开关十分类似,但将不显示版主、发帖人等信息,这样应该就不会折行了。比如将%DIRCMD%环境变量设为/A/P/W再用DIR命令,或者直接在命令行下给DIR加上/W开关即可(不过注意如果同时指定/W和/V的话前者将被忽略,所以如果%DIRCMD%中已有/V开关的话可在命令行下使用DIR /-V/W来屏蔽/V并启用/W)。
作者: qzwqzw     时间: 2007-1-21 01:03
dir 的/v模式确实增加了显示的信息量

但同时也带来了namejm所说的版面空间不足的问题

解决它一方面可以使用加大web页面的宽度(屏幕缓冲区的宽度)

另一方面也可以使用我曾经提到的分为两种模式的方法

最初发起模式:只显示主题的最初发起日期、时间、作者,ID、标题

最后回复模式:只显示主题的最后回复日期、时间、回复者、ID、标题

前者可以容纳更多的信息量,便于批处理的数据抽取

后者可以节约版面空间,不需要折行或左右拖动阅读
作者: qzwqzw     时间: 2007-1-21 01:10
sorry

回复后才看到/W的新变化

感觉与我的思路相类似

只是方向不同而已

不同模式有不同的应用

---------------------------------------

但如果支持自定义列的话

就不用区分这些模式了

可以更加灵活的获取dir信息

类似的find的输出也可以采用一样的列控制

---------------------------------------

另外,区分是否新帖可以在主题类型上加上<新>的标记

但这也意味着每次 edit/more/type 需要对这个标记进行操作

[ Last edited by qzwqzw on 2007-1-20 at 12:15 PM ]
作者: namejm     时间: 2007-1-21 01:49
  用 dir /a /-p /-v /w d:\23 测试了一下,发现虽然Web页里的的记录不再折行显示,但是,把Web页保存为txt文件之后发现还是存在大量的折行,暂时还不明白是怎么回事。

  另外,能否把 类型 这一列的所有情形写入使用说明中?似乎只有<DIR>、<顶>、<精>、<锁>这四种情形才会有标记,其他情形此列为空,我担心如果有所遗漏的话,写代码提取帖子信息有可能出错。或者添加一个参数,把类型这一列过滤掉,以保证所有的列都不为空,方便编写提取代码?
作者: Wengier     时间: 2007-1-21 02:40


  Quote:
Originally posted by namejm at 2007-1-20 12:49 PM:
  用 dir /a /-p /-v /w d:\23 测试了一下,发现虽然Web页里的的记录不再折行显示,但是,把Web页保存为txt文件之后发现还是存在大量的折行,暂时还不明白是怎么回事。

  另外,能否把 类型这一列的所有情形写入使用说明中? ...

我不知道您是用何种方式保存的,如果直接点击屏幕上的一处然后用鼠标选择想保存的文字(或者按Ctrl+A键全选),然后点“复制”(或Ctrl+C键)即可将屏幕上选定的内容保存下来,而且保存下来的内容没有发现有折行(至少在我这儿没有发现)。

现已将类型这一列的所有情形写入使用说明的DIR命令部分。

--------

下面,就是有关自定义列的问题了,上面两三个帖子中都有提到。问题主要在于DOS/CMD下的DIR命令(以及FIND等命令)均没有这种开关,所以我还没有想到一个比较好的实现方案。一个比较重要的问题是"DIR C:"和"DIR C:\目录"这两种形式所看到的许多列都是不同的,所以需要一个比较合理的并能做到兼顾的显示列方案。比如说现在的/W开关在这两种形式下都会起作用,如果加上一些新开关,比如加上一个选择是显示作者还是显示最后发帖人的选项的话,其作用只会在后者中有效。另一种方案是使用诸如/V=xx这种形式的开关,但显然操作起来比较复杂,而且DOS/CMD下也没有。或许可以加上一个诸如/C的开关,来决定是显示文件/目录的建立时间还是最后修改时间(DOS/CMD下的DIR命令则只能显示后者);再加上一个诸如/T开关来决定是否显示文件/目录的类型等。由于这些开关在DOS/CMD下均不存在,所以估计只能靠我们自己来想出一个比较好的方案了。
作者: qzwqzw     时间: 2007-1-21 03:17
那不如把 /V 开关由冗余解释改为视图解释

其后可以自由跟随各个定义列标识

A 主题类型
D 发起日期 T 发起时间 I 主题ID O 发起人 Q 查看数 S 主题标题
E 回复日期 U 回复时间 J 回复ID  P 回复人 R 回复数 T 回复帖标题

现在的 /V 开关可以描述为 /V:EUAIRQOPS

现在的 /W 开关可以描述为 /V:EUAIRQS

现在的 /B 开关可以描述为 /V:I

发起模式可以描述为 /V:DTOQIS

回复模式可以描述为 /V:EUPRJT

-----------------------------------------------------------------

而原来的开关建议保留,作为模版视图

除了 /W

因为容易与CMD DIR的/W相混淆

[ Last edited by qzwqzw on 2007-1-20 at 02:38 PM ]
作者: qzwqzw     时间: 2007-1-21 03:35
关于类型问题

建议增加使用 /A 的类型过滤功能

/A 后跟随各个类型标记实现

D Directory 目录/版块  <DIR>
U Up 置顶 <顶>
C Color 高亮 <亮>
E Elite 精华 <精>
V Vote 投票 <票>
L Lock 锁定 <锁>

另外,如果有余力的话

可以考虑实现以下的类型

A Attachment 附件 <附>
I  Image 附图 <图>
N New 更新 <新>
H Hot 热点 <热>

[ Last edited by qzwqzw on 2007-1-20 at 02:45 PM ]
作者: qzwqzw     时间: 2007-1-21 03:53
另外,建议代码页加上950的繁体中文

这样就可以真正称得上多语言版了
作者: Wengier     时间: 2007-1-21 04:00
上面这些都是相当高级的选项,如果构件太多的话实现起来将极为复杂。而且其中有些项目拼在一起会影响视图和美观(比如两种不同的日期/时间)。为了加强可实现性和实用性,可以将这些内容合并或精简一下。比如/V的选项:

D=日期/时间
T=类型
I=ID
P=版主/发帖人(要能自动根据不同的状态来决定相应的项目,比如说对于文件/帖子将显示发帖人,对于目录/版块将显示版主,等等)
N=数量(与P类似,要能自动根据不同的状态来决定相应的项目,比如说对于文件/帖子将显示回复数和查看数,对于目录/版块则显示文件数和帖子数,等等)
S=名称/主题标题(注:DIR命令不可能显示回复帖标题)

/A的选项基本上还可行。

另外加上一个/C选项来切换为显示建立日期/时间,默认则为最后修改日期/时间。

由于这些实现起来仍然比较复杂,需要加不少代码,所以由下一个版本来做吧。至于950代码页则需要靠Roy了。
作者: namejm     时间: 2007-1-21 04:14


  Quote:
Originally posted by Wengier at 2007-1-20 13:40:
我不知道您是用何种方式保存的,如果直接点击屏幕上的一处然后用鼠标选择想保存的文字(或者按Ctrl+A键全选),然后点“复制”(或Ctrl+C键)即可将屏幕上选定的内容保存下来,而且保存下来的内容没有发现有折行(至少在我这儿没有发现)。

  我是直接在浏览器里点 文件/另存为 保存的,用你提供的办法确实不会产生折行。
作者: pengfei     时间: 2007-1-21 04:22
很好的Web/DOS命令提示符, 功能也不错, 让人眼前一亮~~~!

1.  不知能否加入字号选项, font可以修改字体, 个人喜欢默认字体, 但是字号太大, 整个版面可以显示的信息量有限。而4号字体字号虽然小些,却不太习惯使用这种字体。

2.  在提示符界面下浏览帖子, 如有好的内容希望复制下来, 用鼠标在提示符界面下操作,DOS提示符将失去响应。

3. 如果能在提示符下给好友发消息就更棒了。

发现命令提示符下的时间和日期为本机的而非论坛服务器的时间与日期.

命令行历史感觉不错, 可以用上下光标选择以往输入的命令, 在点像AUTOCAD提示行, 呵~

[ Last edited by pengfei on 2007-1-21 at 05:19 AM ]
作者: qzwqzw     时间: 2007-1-21 05:06
IE里可以通过“查看”里的文字大小调节字体大小

鼠标点击失去焦点后可按一下Tab键找回焦点

当然如果页面中有超链的话

会需要反复按几下Tab

-------------------------------------------

至于时间

没错,确实是本地时间

因为Date/TIMe被设计成“内部命令”

是不需要联系服务器的

想获得服务器时间

使用 net time
作者: pengfei     时间: 2007-1-21 05:13
呵~   原来可以用IE菜单调节字体大小。 TAB键果真可以回到命令输入状态。
作者: namejm     时间: 2007-1-21 05:18


  Quote:
Originally posted by pengfei at 2007-1-20 15:22:
2.  在提示符界面下浏览帖子, 如有好的内容希望复制下来, 用鼠标在提示符界面下操作,DOS提示符将失去响应。

  虽然外观是字符界面,实际上还是用图形界面模拟出来的,本质上这还是一个网页界面,把鼠标定位到命令提示符处就可以了。
作者: qzwqzw     时间: 2007-1-21 05:34    标题: 一个笔误

命令行提示中频繁出现一个词——贴子

实际应为帖子

我们常常混用“转帖”与“转贴”二词

虽然二词同义,但不代表二字同义

因为转贴可以看作一个动词

而转帖则是一个动宾短语

作者: Wengier     时间: 2007-1-21 15:43


  Quote:
Originally posted by namejm at 2007-1-20 04:18 PM:

Originally posted by pengfei at 2007-1-20 15:22:
2.  在提示符界面下浏览帖子, 如有好的内容希望复制下来, 用鼠标在提示符界面下操作,DOS提示符将失去响应。

  虽然外观是字符界面,实际上还是用图形界面模拟出来的,本质上这还是一个网页界面,把鼠标定位到命令提示符处就可以了。

这个问题本身倒是不错。为了更好的实现模拟,我现已加入了即使当命令提示符失去焦点的时候按任意键(Ctrl/Alt组合键及键盘指示灯键除外,以允许Ctrl+A/Ctrl+C/Ctrl+V等特殊功能键进行编辑等操作)将自动恢复命令提示符的焦点,并且效果通常将与之前没有失去焦点的情况下按键无异。

------

  Quote:
Originally posted by qzwqzw at 2007-1-20 04:34 PM:
命令行提示中频繁出现一个词——贴子

实际应为帖子

我们常常混用“转帖”与“转贴”二词

虽然二词同义,但不代表二字同义

因为转贴可以 ...

我已将里面所有的“贴”字改为“帖”字。
作者: Wengier     时间: 2007-1-22 21:41
现已正式加上DIR的/A和/V开关的各选项!目前支持的选项包括:

/A开关选项:
A  附件           C  关闭/锁定      D  驱动器/目录
F  普通文件     G  精华             H  热门
L  高亮           P  投票             T  置顶

/V开关选项:
D  日期/时间      I  ID             P  发帖人/版主
R  记录             S  名称/标题  T  类型

比如:

DIR /A:HT 将显示所有热门帖子或置顶帖子
DIR /A /VDIRTS 将显示所有帖子,并显示它们的日期/时间、类型、ID、回复/查看数、名称/标题。

如果不加上这些选项的话表示显示所有项目,和之前版本的作用相同。选项字母来自于其正式英文名称,而开关和选项之间的冒号可有可无。另外已加上/C开关来显示建立日期/时间,同时现在DIR命令的类型将会显示热门帖子及带有附件的帖子。
作者: qzwqzw     时间: 2007-1-23 00:43
新的dir修改很不错,仅报告以下问题

1、dir项目为目录或版区时,会只显示.一个目录

2、/V的选项T(类型)建议改为A(属性)

以后两个概念合为一个,更便于理解

而且,按我的理解,类型是互斥的、单选的,属性是相容的、多选的

3、/A的选项F(普通文件)建议修改为N(普通)或取消

从“属性”的角度理解

没有任何属性的文件就是普通文件

比如CMD中,没有AHSR属性的便是普通文件

但为了过滤方便,普通属性需要一个标记

但此时是用“普通”作为属性,而不是用“普通文件”作为属性

4、文件属性的相容带来一个版面空间问题

一个文件最多可以同时拥有以下7个属性

A(附件)/C(关闭)/G(精华)/H(热门)/L(高亮)/P(投票)/T(置顶)

而dir输出的属性列中显然没有预留出足够的空间来显示全部的属性标识字

-----------------------------------------------------

建议在命令行界面是用net logon后随即加载autoexec.bat

-----------------------------------------------------

使用Opera发现缓冲区宽度增大,缩放至50%后可全显

而使用IE仍然是原来的宽度

-----------------------------------------------------

edit编辑器使用Ctrl+C退出

导致按习惯使用Ctrl+C复制文本时出现退出提示

而输入法打开的情况下

按C键来取消变得很麻烦

而目前我复制文本的临时办法是

选中-Ctrl+X-Ctrl+V-移动到新地点-Ctrl+V

很麻烦

另外,Ctrl+C常用于非正常终止

建议将退出修改为Ctrl+Z或者Ctrl+Q

作者: Wengier     时间: 2007-1-23 02:25


  Quote:
Originally posted by qzwqzw at 2007-1-22 11:43 AM:
新的dir修改很不错,仅报告以下问题

1、dir项目为目录或版区时,会只显示.一个目录

2、/V的选项T(类型)建议改为A(属性)

以后两个概念合为 ...

DIR显示目录时只显示.的问题为最后一时的手误,已修正。

已将DIR的“类型”全部改为“属性”、/A的F已改为N,即普通。

关于版面问题。当使用代码页437的时候,每个属性会用一个字母(与/A的选项一致)来表示,当使用代码页936时则每个属性为一个汉字。目前的采取方法是当如果超过宽度的时候会自动截去超出的部分,不过由于同时拥有这么属性的文件几乎不存在,所以通常并不会出现这种情况。相反,多数文件一个属性都没有,如果默认留更多的位置,恐怕会造成屏幕空间更加紧张。

关于net logon,有时候autoexec.bat已经运行过一次了,用户只是临时登出并重登录一下,有可能并不一定想再运行一遍。如果确实想运行的话,建议直接输入cmd/p吧,这样autoexec.bat文件就会再自动运行了。

我倒没有发现Opera缓冲区增大。可能是字体或版本原因?我的Opera是9.10版。

关于EDIT下的Ctrl+C,其实这个问题我考虑过很久。本来是直接按ESC键就可以退出的,在IE、Firefox、Opera等浏览器下均没有问题,但偏偏有些人使用的Maxthon浏览器有个BUG,那就是网页中不能识别ESC键,我只好允许加入另一个能达成同样效果的键作为备用。对于MORE或DIR/P命令的分屏,按ESC、Q、Ctrl+C键均可中断。但在EDIT中,Q键显然不能做为退出键,否则就没法输入这个字母了。Ctrl+Z和Ctrl+Q等键本来也很好的,但它们也是特殊键,如Ctrl+Z可用于撤消,而且在一些浏览器上无法对它们进行直接控制,因此只好使用Ctrl+C键了。不过,它又和复制操作键相同,而造成一些麻烦。我暂时只好决定这样处理:当BREAK为ON的时候,允许按Ctrl+C键退出,以照顾Maxthon浏览器;当BREAK为OFF的时候,不能按Ctrl+C键退出,以方便复制操作。如果需要经常进行复制操作,建议在AUTOEXEC.BAT中加上BREAK OFF一行。这样也许算是一种解决办法吧。
作者: qzwqzw     时间: 2007-1-23 04:27
屏幕缓冲区的问题

我在 Opera 9.01 和 Opera 9.10 都遇到过

但奇怪的是不是每次都这样

这应该与Opera有关

等我观察出规律再说吧

--------------------------------------------

回想起来

命令行界面为兼容浏览器实际上已作了太多的工作

添加Ctrl+C

帖末强制添加</code>代码

修改全角空格等等

现在还有Opera下的Quote块缺省居中的问题

不过我倒觉得

为了兼容非主流浏览器而影响代码的简洁有些得不偿失

这个问题暂时先放一放吧

---------------------------------------------

net logon 问题就按你的意见办吧

---------------------------------------------

刚才发现dir a:的输出略有调整

似乎你正为驱动器和文件并存输出心忧

我想倒不如将autoexec.bat放入默认论坛

一者既解决了并存输出的很多麻烦

二者也为日后的功能扩展奠定基础

扩展方向大约有两个

一个是可以支持更多的脚本

除了启动时的脚本

还可以包括手动执行的脚本,依靠事件触发的脚本

另外一个方向就是用户功能

短消息、我的主题、主题订阅、编辑个人资料等都是比较实用的功能

建议尽早列入开发日程

作者: Wengier     时间: 2007-1-23 13:25
现在Quote的部分已经是只有外框而没有加色显示了,所以居中估计会更显眼些,而且与GUI界面保持一致。

默认论坛(即B盘)其实是一个特殊的版块,是所有Discuz!论坛最初的版块(所以叫默认论坛),里面也可以存放主题、帖子等,只是大多数论坛之后新建了其它版块而将其留空。换句话说,默认论坛从本质上来说还是一个正常版块的,所以如果用它来放AUTOEXEC.BAT似乎不太合适。而且,好像正常的电脑不可以从B盘启动(启动盘只能是A盘或C盘),所以B:\AUTOEXEC.BAT启动时不能被自动运行。目前的AUTOEXEC.BAT是通过扩展现有数据表而做成的,如果要支持更多自定义的脚本的话,光扩展现有数据表是不够的,而需要新增数据表。DOS和CMD下均没有有关阅读短消息的命令,所以我还没想好用什么命令及形式来操作比较合适呢(Unix下倒是有WRITE等命令可以读写消息,但似乎不像是DOS/CMD命令)。
作者: Roy     时间: 2007-1-23 13:46
M$不是也有Exchange for DOS嗎? 也有M$ Mail (MAIL.EXE)呢
其實從*nix把mail/uucp指令移植過來也無不可啦。

[ Last edited by Roy on 2007-1-23 at 05:53 AM ]
作者: qzwqzw     时间: 2007-1-24 00:38
发短消息可以用net send或者别的

阅读短消息吗

把邮件按文件处理——dir列表/type显示即可

只是为了降低开发的复杂度

可能分拆成两个相对独立的文件系统会好一些

比如专门为短消息箱分配一个或两个驱动器

---------------------------------------------------

至于自由脚本

不太清楚所谓扩展表与新增表

但照我的理解

将他们都作为了一个普通文件来处理

似乎可以用统一的数据表结构来实现

---------------------------------------------------

Roy 出现了

是否意味着950的繁体版也值得期待了?
作者: Wengier     时间: 2007-1-24 01:10


  Quote:
Originally posted by qzwqzw at 2007-1-23 11:38 AM:
发短消息可以用net send或者别的

阅读短消息吗

把邮件按文件处理——dir列表/type显示即可

只是为了降低开发的复杂度

可能分拆成两个相对独 ...

net send我也曾考虑过,不过似乎有点不太合适,因为论坛的短消息同时有标题和内容,而内容可以是一些段落,就像帖子一样,而在命令行上用net send则只能发很简单的文字,不太实用。更重要的是,net send只是一个独立的功能,只能发不能收,总觉得不太完整,即使采用特殊手段以DIR命令来列出,也由于这两种功能看起来不相关而觉得有些别扭,缺乏一致性和统一的操作接口。

看到Roy上面提到的MS Mail和Unix中的MAIL命令,我倒有一种想法,看看是否可行:

MAIL:显示收件箱情况及未读消息。
MAIL ALL:显示收件箱中的所有消息,包括未读和已读消息。
MAIL [数字]:将显示消息内容。
MAIL TO xxx:给xxx发送消息,其中xxx可以是多人,以逗号分隔。
作者: qzwqzw     时间: 2007-1-24 02:11
我本来的想法是

用文件命令把邮件当文件来管理

邮件命令只用来实现收发

草稿/编辑/分类/筛选/忽略都有了实现的可能性

-----------------------------------------------------------

不过这样也好

反正在CMD中也没有邮件收发的标准

怎么定都可以

先做的也许可以成为事实标准也不一定

而且我的想法是把摊子铺大了些

一个短消息系统似乎没必要做成一个邮件系统

---------------------------------------------------------------

照这样看来

用户资料/主题订阅大约都需要新增命令了
作者: Wengier     时间: 2007-1-24 02:14
当然,我还有另一种方案那就是增强NET命令。除支持用NET SEND命令发送短消息外,新增一个NET RECEIVE命令来查看未读的短消息,用NET RECEIVE [数字]则可以显示短消息中的内容。另外还可以考虑加入NET SESSION来显示在线用户列表。不知道哪种方案更合适些。
作者: qzwqzw     时间: 2007-1-24 02:31
既然都是新增命令

自然就根据自己的需求来判断

mail 胜在简单(我一度考虑用 pm)

而且我比较喜欢一个命令仅实现一个相对独立的功能

对于for/if/set/net等所谓集成命令没有太多好感

用户列表建议用 net view 或者 net user

当然还是要根据你以后的开发计划来全盘考虑的
作者: Wengier     时间: 2007-1-24 03:06
看到现在关于短消息系统的实现已经有了至少三种方案,我就来总结一下各种方案的优缺点吧:

方案一:用NET SEND发送消息,将消息当作文件用DIR命令查看。
优点:模拟了DOS/CMD中的NET命令的SEND选项,并且为消息和帖子实现了统一的阅读平台。
缺点:发送消息和阅读消息的方法相互独立,缺乏一致性。实现消息和帖子的统一性虽好,但同时可能也忽略了一些问题,而且实现起来也比较麻烦。当均作为文件系统来处理的时候,现有的所有文件相关命令(比如CD、DIR、TYPE、EDIT、FIND等)也都需进行修改已全面支持新的文件系统(相当于在DOS下加载NTFSDOS之类的程序,而这些程序需提供NTFS等DOS无法直接识别的驱动器下的文件操作接口)。

方案二:新增MAIL命令来专门处理短消息。
优点:简单灵活、操作简便、功能相对完整。
缺点:非通常的DOS/CMD的现有命令,相当于用一个新命令来处理一个独立的系统。

方案三:用NET SEND发送消息,并增加NET的RECEIVE选项来查看消息。
优点:利用了DOS/CMD下的NET命令进行操作,并作了增强以满足实际的需求,以及保持了短消息操作的一致性。
缺点:作为集成命令,可能没有单独的命令那样简单灵活。

以上作为参考,以方便进行判断。
作者: Roy     时间: 2007-1-24 07:14


  Quote:
Originally posted by qzwqzw at 2007-1-23 11:38:
Roy 出现了

是否意味着950的繁体版也值得期待了?  

現在先要把語言從主系統分離出來以減少需要傳送量我才會把CP950加上呢...
最快我會在週末動工...看情況吧 ;)
作者: Wengier     时间: 2007-1-25 04:42
现已正式支持收发短消息的功能!

关于最终的实现方法,想了很久,其中qzwqzw提出的第一种方案合理性还是不错的,主要是原先考虑到内容比较复杂而且时间较紧所以一时可能较难实现。不过,最终决定还是采用此方案来实现收发短消息。

现在收件箱中将作为G盘(即原最后一个驱动器的下一个),其中的的短消息和各版块中的帖子的管理形式完全一致,可用DIR、TYPE等命令对其进行列表、查看等操作。<新>表示新消息,可以用DIR的开关进行过滤,和帖子一样。不过,FIND命令目前暂不支持查找此驱动器中的内容(会给出提示)。

发送短消息可使用NET SEND命令的形式,例如NET SEND a,b将发送给a和b两个用户,然后系统将自动提示输入标题和内容。
作者: qzwqzw     时间: 2007-1-25 07:01
新的命令行短消息系统终于问世了

这个系统要想更加成熟

还需要做以下的工作

1、增设发件箱

2、在用户登录后有提示消息

3、使用edit或者其它命令回复短消息

4、允许删除短消息

-----------------------------------------------

短消息系统导致许多命令的文档描述概念需要扩展

同时需要考虑以后可能增加更多的文件系统

比如脚本,主题订阅等等
作者: Wengier     时间: 2007-1-25 16:32
现在用户登录后已有提示消息。

同时支持用NET和EDIT等命令来发送/回复短消息似乎不妥,或许可以考虑这种形式:

直接将短消息发送给指定用户:NET SEND TO xxx
将短消息发送给指定文件(帖子/短消息)的作者:NET SEND 文件名 [帖子号]
就像论坛的每个帖子后都有一个“消息”按钮可以给其作者发消息一样,比如当用NET SEND C:\1\2将发送短消息给此帖的发帖人,而NET SEND G:\1将发送(即回复)短消息给此文件(短消息)的发送人。

至于订阅或收藏的主题,由于均为其它驱动器中已有的内容,所以单独增加新的文件系统似乎并无必要,而采用NET xxx(比如NET FILE?)形式的命令来显示个人的主题订阅/收藏以及它们的所在路径也许更好些。
作者: Wengier     时间: 2007-1-26 04:13
现已正式加入发件箱!发件箱在收件箱的后一个驱动器。发送的短消息将自动存入这里。

已增强NET SEND命令,可以用它来直接对某个文件(帖子/短消息)的作者进行发送/回复短消息。用法详见楼上。

除昨天加入的NET VIEW命令显示在线用户列表外,现已增加了NET FILE命令显示订阅/收藏的文件(主题),以及NET GROUP命令显示用户组信息。
作者: qzwqzw     时间: 2007-1-26 07:59
短消息系统还没有办法进行全面的测试

不过目前还没发现什么问题

突然觉得Google的线索浏览方式挺使用

类似于创建和维护一个多人共有的私有主题

但现在要实现它又要大动

还是算了吧

-----------------------------------

net user/net view/net group/net file也已简单测试

希望net file可以用以下的形式浏览和增删订阅

net file id
net file id /a
net file id /d

订阅和收藏建议保留一个就可以了

目前来看,二者的功能有很大的重叠

似乎订阅更强一些,可以在有更新显示提示

-----------------------------------

net view 建议加上浏览的论坛ID/名

net view/net user 可以指定用户名

net user username 查阅其它用户信息
net view username 查阅指定用户动作

-----------------------------------

注意到文件属性中增加了New

但目前为止,type/edit/more不会复位这个属性

只能到Web界面里复位

-----------------------------------


作者: qzwqzw     时间: 2007-1-27 23:24    标题: 我在编辑比较长的帖子上出现问题

我在编辑比较长的帖子上出现问题

如果帖子内容超出一屏

那么在编辑帖子前段的内容时

屏显会随着键盘的键入不断的在命令行最底部和当前位置来回抖动

作者: Wengier     时间: 2007-1-28 05:09
已加入以下方式订阅或取消订阅文件:

订阅:NET ADD 文件名
取消订阅:NET DEL(ETE) 文件名
要浏览直接用TYPE或MORE命令加上文件名即可。

NET USER和NET VIEW现已支持用户名参数,将分别显示指定用户的信息和在线状态。NET VIEW同时也已支持显示用户所在的文件名或目录名。

另外加入了NET STATISTICS(可简写为NET STATS)显示一些论坛统计数据。

TYPE/MORE命令对于短消息文件的<新>属性将自动复位,但对于主题文件的方式因为方式完全不同,所以暂未支持。

关于比较长的帖子的问题,请举例说明,以便我在不同浏览器下进行测试以确定问题所在。
作者: qzwqzw     时间: 2007-1-28 06:06
编辑长帖抖动的例子:D:\12\24289 38

或者本帖也可以

比较集中发生在插入或删除文字的时候

猜测与不久前增加的按任意键回到命令行底部的特性有关

-----------------------------

net statistics/user/view 没发现什么问题

-----------------------------

net file add/del 也没发现什么问题

只是感觉似乎可以再增强一下

一方面可以根据订阅主题的更新顺序列表

可以获知最近更新的订阅

另一方面可以给订阅主题定义一个别名或者序号

可以使用 type ~1 的形式加速命令行的访问

或者可以使用 edit cmdprmpt -1 的形式免去记忆id的麻烦

环境变量可以辅助完成这个过程

但似乎仍有瑕疵

由此想到doskey的宏命令似乎也可以间接实现这个过程

------------------------------

至于是否将edit过的主题自动加入订阅也可以讨论

因为这样可以将我的主题和主题订阅功能合二为一的实现

但对那些经常回帖灌水的朋友可能不利

不断刷新的订阅可能会导致降低对某些感兴趣问题的关注程度

当然前提是他们使用订阅这个功能

------------------------------
作者: Wengier     时间: 2007-1-28 18:14


  Quote:
Originally posted by qzwqzw at 2007-1-27 05:06 PM:
编辑长帖抖动的例子:D:\12\24289 38

或者本帖也可以

比较集中发生在插入或删除文字的时候

猜测与不久前增加的按任意键回到命令行底部的特性 ...

关于长帖抖动的问题,看来与那个新特性无关,而是一直存在的当改动了文件内容时会导致自动滚屏的问题。现已将自动滚屏取消。

  Quote:
Originally posted by qzwqzw at 2007-1-27 05:06 PM:
net file add/del 也没发现什么问题

只是感觉似乎可以再增强一下

一方面可以根据订阅主题的更新顺序列表 ...

关于订阅的文件,现已按照最后更新顺序来列出(新->旧),并加入了使用文件ID来实现快速访问。此ID非自己定义的ID,因为论坛数据表中并没有专门的文件订阅ID,而且如果是专门的ID的话会随着订阅的内容或最后更新顺序的变化而不断变化,不太合适。故采用了使用文件本身ID的方法(比如说C:\1\2这个文件的ID为2,而它是固定且唯一的),它也会被NET FILE命令列出。这样,就可以用文件ID来直接存取订阅的文件了,只需在文件ID前加上~字符即可,比如DIR ~11、TYPE ~22、EDIT ~33、NET FILE DEL ~44等等。为了更方便使用,还加入了支持类似~+1、~-2这样的格式,分别代表文件订阅列表中的第一个文件(即最新更新的文件)、文件订阅列表中的倒数第二个文件等等。

现在已支持将EDIT命令过的主题自动加入订阅列表,而且用户也可以打开或关闭此功能。方法是设置%AUTOSUB%环境变量,当其值为任何正数(默认为1)的时候EDIT将自动将文件加入订阅列表,否则将不加入。

另外,现在TYPE和MORE命令已支持重置帖子文件的<新>属性,而且FIND命令也已支持查找收件箱和发件箱(G:和H:)内的文件(短消息)中的内容。

更新到3.8正式版。
作者: qzwqzw     时间: 2007-1-29 00:25
订阅和长帖抖动都OK了

新增的net stats简写形式也试过了

再次对你一直以来孜孜不倦的精神表示钦佩!

-----------------------------------------------------------------

现在出现一个新问题

用edit发表新主题时总是返回“服务器响应不正确。”

使用了edit .或者edit d:\23都是同样的结果

用Edit回复和编辑旧主题

在保存发送时也返回同样的提示

但回复确认已发出

作者: qzwqzw     时间: 2007-1-29 00:41
似乎与自动订阅有关

现关闭自动订阅后测试

------------

问题消失

再开启

编辑后再测试

------------

问题又出现

再关闭

编辑后再测试

------------

问题再次消失


作者: Wengier     时间: 2007-1-29 00:43
嗯,用edit发表新主题时的提示已修正。
作者: Wengier     时间: 2007-1-29 00:56
EDIT编辑文件和自动订阅之间的问题的原因已查明,现在应该可以了,再试试看吧。
作者: qzwqzw     时间: 2007-1-29 02:37
自动订阅特性已基本测试完毕

未发现问题,恭喜!
作者: electronixtar     时间: 2007-1-29 02:42


  Quote:
突然觉得Google的线索浏览方式挺使用

类似于创建和维护一个多人共有的私有主题

但现在要实现它又要大动

还是算了吧

……我一直苦苦推荐的wiki就是多人协同创建、维护、讨论的主题……

wiki 是未来论坛的趋势
作者: qzwqzw     时间: 2007-1-29 03:30
我所说的Google线索浏览方式

是指Gmail中按主题管理邮件的思想

与协同维护的Wiki不是一回事

前者的亮点在于将邮件按照事件的连贯起来

后者的亮点在于阅读者同时也可以是编辑者

--------------------------------------------------------

邮件、论坛、Wiki、网志这些网络交流方式

目前来看还没有谁取代谁的趋势

因为它们设计思想的侧重点各有不同

技术上的优劣并不一定表明设计思想的优劣

---------------------------------------------------------

不过他们都会不断发展改进

互相之间的特性会不断融合变异

可能会形成一些新的交流方式

------------------------------------------------------

已经跑题了

如果还有讨论请另开新帖吧

这里还是回到论坛命令行界面上来

--------------------------------------------------------

感觉目前的论坛命令行已经十分成熟

与GUI相比具有很多更优异、更独特的特性

比如以下这些特性

历史浏览——查看以往的输入/输出已经不需要回退了,上下滚动即可

输出定制——可以按照多种方式来定制和过滤输出的内容,冗余信息减少了

资源节约——Ajax的内核和Cmd的外壳有效的降低网络流量,节约服务器资源

----------------------------------------------------

关于4.x的发展方向

1、基于telnet方式的实现

完全抛弃Web而投入真正的命令行

这意味着整个内核都需要做出大幅调整

技术复杂度应该很高

2、命令行管理功能的增强

诸如attrib/del/move/copy/deltree等具有管理权限的命令加入

当然这些只对管理员和版主等少数用户有用

用户过少导致开发成本与用户收益比例过大

3、本地环境的交互

能够将自身的输出定位到本地

并从本地获取必要的输入

这意味着可以实现离线收发和自动收发

当然现行网络和应用的现状对此项需求仍不够迫切

4、脚本的应用扩展

命令行的一大特色就是脚本的应用

如果能实现更多脚本并且由特定的事件来触发

则输入输出将更加自由和灵活
作者: qzwqzw     时间: 2007-1-29 04:15    标题: dir/s/-p的问题以及订阅别名

使用dir d:\ /s/an列表D区所有新帖

结果发现每版列完必有暂停

使用dir d:\ /s/an/-p 没有效果

同时使用dir /b/s也出现类似的情况

而且dir/b/s列出的不是完整路径

------------------------------------

~+1/~-1的形式应该算是订阅别名吧

只是使用的时候发现

如果旧的订阅被更新后

其别名并未随着订阅位置的变动而变动

这是好是坏尚难以界定

由此猜测net file的输出之前

订阅主题的输出显示可能被按更新时间进行排序
作者: Wengier     时间: 2007-1-29 04:58
dir d:\ /s/an/-p和dir /b/s其实是同一个问题,现已解决。

dir/b/s也已改为显示完整路径。

订阅的~+1/~-1顺序问题需要先看看并确认一下。
作者: qzwqzw     时间: 2007-1-29 06:52
嗯,已有问题解决得差不多了

就等Roy的950代码页完成出4.0版了
作者: Wengier     时间: 2007-1-29 18:21
订阅的~+1/~-1顺序已和NET FILE列表顺序一致(之前是按建立时间来算的,现改为最后修改时间,和NET FILE列表一致)。

关于管理方面的命令,现已加入DEL命令。由于此命令同时可用于删除G盘和H盘上的短消息文件,此时不需要管理权限(其它盘则需要),所以加入此命令。

另外,还加入了PUSHD和POPD命令,可像CMD那样快速保存和恢复当前目录。准备作为4.0版前的最后版本--3.9版。
作者: qzwqzw     时间: 2007-1-30 00:50
在出正式版之前再提一个建议吧

给type/more加上dir/find中所有的offset参数

当然这里的offset是指主题内帖子序号的偏移,比如

type c:\8\26803 0,3  显示从倒数第1个帖子开始的3个帖子

more c:\8\26803 -2,2 显示从倒数第二个帖子开始的2个帖子

缺省值可以取得不同,比如

type c:\8\26803 0  显示从倒数第1个帖子开始的所有帖子

more c:\8\26803 -2 显示从倒数第二个帖子开始的1个帖子

作者: Wengier     时间: 2007-1-30 01:05


  Quote:
Originally posted by qzwqzw at 2007-1-29 11:50 AM:
在出正式版之前再提一个建议吧

给type/more加上dir/find中所有的offset参数

当然这里的offset是指主题内帖子序号的偏移,比如

type c:\8\26803 0,3  显示从倒数第1个帖子开始的3个帖子 ...

倒数第一个帖子应该是-1吧,0是指主题帖呢。
作者: qzwqzw     时间: 2007-1-30 01:58
sorry!

手误,达意即可,就不改了

-------------------------------------------------

今天登陆论坛GUI

反复出现服务器内部错误和实际用户ID无法改变的错误

不知是何问题?

换用命令行可以登陆

但也返回了数个服务器响应不正确的提示
作者: Wengier     时间: 2007-1-30 02:33


  Quote:
Originally posted by qzwqzw at 2007-1-29 12:58 PM:
sorry!

手误,达意即可,就不改了

...

已给TYPE和MORE加上[帖子号[,数量]]这种用法!具体如下:

当不指定"数量"时(如TYPE C:\1\2 3),TYPE/MORE的效果将与原先相同,以保持兼容性,以及与EDIT和FIND命令统一;

当"数量"为负数时,表示从指定的帖子号开始显示至倒数第"数量"个帖子(-1即最后一个),所以TYPE C:\1\2 -3,-1表示从倒数第三个帖子开始显示至最后一个帖子(文件尾),TYPE C:\1\2 4,-2表示从第4个帖子开始显示至倒数第二个帖子等;

否则的话,将从指定的帖子号开始显示指定数量的帖子(如果为0当然什么都不显示)。

更新到3.9正式版。

  Quote:
Originally posted by qzwqzw at 2007-1-29 12:58 PM:
今天登陆论坛GUI

反复出现服务器内部错误和实际用户ID无法改变的错误 ...

估计是服务器本身今天有一些问题,造成有时候资源读取失败(自然同时会影响到GUI和命令行界面,所以出现提示)。具体情况其实我也不太清楚,可能过一段时间就会解决的。
作者: Wengier     时间: 2007-2-4 00:02
为了演示命令提示符4.0版目前的开发情况,以及帮助其进一步的完善,现发布它的第一个公开测试版。新增功能如下:

1:完全重写的语言接口,使多语言支持更加容易,并加入950繁体中文代码页(直接用CHCP 950即可,或在URL中加上?cp=950;内容由Roy提供);
2:加入EDIT命令的命令行开关,包括/D(禁用Discuz!代码,默认为启用)、/I(忽略积分和时间限制)、/R(在文件中回复帖子,相当于“引用回复”功能)、/S(不使用个人签名,默认为使用)、/T(附加编辑日期和时间)、/U(禁用URL自动识别,默认为启用);
3:调整了NET SEND的用法,“NET SEND [TO] 用户名”将直接发送给指定用户,TO可有可无;“NET SEND FOR 文件名 [帖子号]”将发短信给文件/帖子作者,而“NET SEND RE 文件名 [帖子号]”将引用文件内容回复,此时真正和GUI界面的短消息回复功能一致;
4:TYPE命令可以显示个人签名。
以及其它一些小修改。

欢迎测试。
作者: Wengier     时间: 2007-2-4 20:58
现在正式加入了在A盘上自由建立文件的功能,比如说EDIT A:\ABC.TXT将在A盘上建立ABC.TXT文件(如果已经存在将修改原有的文件),用TYPE、FIND命令可以显示、查找里面的内容,也可以用DEL命令删除文件。文件名采用DOS标准的8.3格式。另外加入了REN命令,以支持重命名A盘上的文件。

说明:由于新版本采用了新格式以存储A盘上文件,以支持自由建立文件,因而3.9以前的版本将无法读取这些文件(原有的文件内容则均已保留)。现更新到4.0 RC2版,地址将和原来的一样:

http://www.cn-dos.net/forum/cmdprmt.php
作者: Wengier     时间: 2007-2-5 16:48
发布第三个公开测试版,做了以下主要更新:

1:正式支持willsort和qzwqzw提到的自由脚本功能,可以在命令行下直接运行批处理文件(即以.BAT为扩展名的文件),调用时可省略扩展名,和DOS/CMD一致;
2:支持批处理文件的可替换参数,比如%0、%1、%2等,并加入SHIFT命令来变换其位置;
3:TYPE/MORE命令可以显示和下载帖子中的附件(如果有的话);
4:列出目录视图时可以显示今日帖子。
以及其它一些小修改。

另外,关于%符号有一点要注意,那就是如果在批处理文件中运行时将被自动提取并展开,故如果要在批处理文件中使用%这个符号的话需使用两个%号,比如“echo 已完成95%%”、“font 20%%”等。此处理方法与DOS/CMD下一致(所以批处理文件中常见到for %%i in ...这种形式)。

更新到4.0 RC3版,欢迎测试和报告问题。如果没有问题的话不久后将推出正式版。
作者: qzwqzw     时间: 2007-2-5 21:20
几日不见

已出了三个测试版了

而且功能确实吸引人呢

现在很忙

等到中午12点后再出测试结果吧
作者: qzwqzwtest     时间: 2007-2-6 02:54
功能增加了很多

测试时间不太够用

只列出已知的问题

1、用户个性签名中的Discuz!代码通常不应被禁用,26464#10等帖子有此类问题

2、积分限制主题浏览响应差异,type 26853正常回应,type 27221服务器响应不正确,type 27221 0,9正常回应

3、脚本中%0、%1、%2等在执行了type等命令后丢失

4、脚本中出现死循环时,无法Ctrl+C终止,BREAK ON开启

建议新增

1、type/more是否显示个性签名的开关

2、type/more时显示附件中的贴图

3、脚本中支持goto :eof跳转到结束
作者: Wengier     时间: 2007-2-6 04:36


  Quote:
Originally posted by qzwqzwtest at 2007-2-5 01:54 PM:
功能增加了很多

测试时间不太够用

只列出已知的问题

1、用户个性签名中的Discuz!代码通常不应被禁用,26464#10等帖子有此类问题

2、积分限制主题浏览响应差异,type 26853正常回应,type 27221服务器响应不正确,type 27221 0,9正常回应

3、脚本中%0、%1、%2等在执行了type等命令后丢失

4、脚本中出现死循环时,无法Ctrl+C终止,BREAK ON开启

建议新增

1、type/more是否显示个性签名的开关

2、type/more时显示附件中的贴图

3、脚本中支持goto :eof跳转到结束

1:已将个人签名中的Discuz!代码改为通常开启,除非帖子中禁止了。

2:关于27221的第9个回帖响应不正确的问题,经研究发现是无奈何的个人签名中存在的•这个特殊字符引起的。现已将所有的•字符自动替换为·字符,这样应该就不会出问题了。

3:脚本中%0、%1、%2在执行type等命令后丢失的问题已修正。

4:关于死循环,可能要分两种情况。一种情况是死循环部分中存在任何一个像dir、type/more这样的外部命令,或者pause这样的暂停命令,这样批处理程序执行到这条命令时会停顿一秒钟左右或暂停执行,这时按下Ctrl+C键应该是可以终止的(我刚才在IE/Firefox/Opera下都试过了);另一种情况是死循环部分只有内部命令,这就比较麻烦了,因为这时代码是全部交由浏览器处理的,中间没有任何停顿(不需要经过服务器),所以如果一直无停顿的执行下去会导致浏览器停止响应,这时按键当然没有任何效果。所以最好的方法只能是避免只有内部命令的死循环部分了。

5:已加入goto :eof这种用法以跳转到结束。

下面将加入type/more命令的开关。
作者: qzwqzw     时间: 2007-2-6 06:43
使用qzwqzwtest编辑原帖27221#13提示拒绝存取

用Del删除新的回复帖27221#16也提示拒绝存取
作者: Wengier     时间: 2007-2-6 13:42


  Quote:
Originally posted by qzwqzw at 2007-2-5 05:43 PM:
使用qzwqzwtest编辑原帖27221#13提示拒绝存取

用Del删除新的回复帖27221#16也提示拒绝存取

我刚才模拟使用qzwqzwtest登录并输入edit c:\8\27221 13,但发现可以进行编辑,而没有提示拒绝存取呢。顺便说明一下,目前的EDIT编辑权限是这样的:只要是作者本人或版主/管理员即可以编辑指定的帖子。如果用别的帐号编辑则当然不行。

用DEL删除帖子时提示拒绝存取倒是正常的,因为目前DEL命令只能由版主或管理员使用于C盘至F盘上的文件(如顶楼帖子中的DEL命令部分所述),用版主或管理员的帐号就可以正常删除此帖(我刚才就用此命令将它删除了)。
作者: Wengier     时间: 2007-2-6 15:39
现已加入TYPE/MORE命令的开关。具体如下:

/A:不显示附件(默认为显示);
/D:禁用 Discuz! 代码(默认为启用);
/P:不显示投票结果(默认为显示,新加入)。
/S:不显示个人签名(默认为显示)。

另外,TYPE/MORE命令现已支持直接显示帖图。如果点击帖图的链接将从新窗口中打开放大的图片。

更新到4.0 RC4版。
作者: qzwqzwtest     时间: 2007-2-6 21:42
edit 27721 13怕是测试出了问题

已经无法重现,可以认为是误报

-----------------------------------------------

死循环终止的问题

测试的时候使用type命令

但是在循环数次之后

Type的参数会为空

此时如果判断空参数的语句出错无法跳出

就会比较难以Ctrl+C
@echo off
:loop
if "%1"=="" goto :end
rem 这个语句是有意写错的
echo --- %1 ----
type %1 0
shift
goto loop

:end
-----------------------------------------------
另外提一个建议

dir的22文件建议放在输出末尾或者文件数显示之后

因为dir的输出会将提示滚动出屏幕

一般新手不会注意到

类似的,net file和邮件箱的输出时也最好能标上它的上限
作者: Wengier     时间: 2007-2-7 01:36


  Quote:
Originally posted by qzwqzwtest at 2007-2-6 08:42 AM:
edit 27721 13怕是测试出了问题

已经无法重现,可以认为是误报

-----------------------------------------------

死循环终止的问题

测试的时候使用type命令 ...

关于上面那段死循环例子代码,我在IE7、Firefox 1.5、Opera 9下都试了一会,循环一次或数次后按Ctrl+C键,但每次按Ctrl+C键都中断了程序。比如说我从运行到中断期间屏幕上是这样显示的:

  Quote:
A:\> looptest test

--- test ----
参数太多 - 0
标签找不到
---  ----
找不到文件。
标签找不到
---  ----
找不到文件。
标签找不到
---  ----
找不到文件。
标签找不到
---  ----
^C (此时按下Ctrl+C键)

A:\>

Ctrl+C键在我这儿看来非常有效,多次测试没有一次失败过。(注:如果键盘上的Ctrl+C键不太灵,用Ctrl+Break键也是可以的)

不过,我刚已加上了“GOTO :标签”这样的非标准用法,与“GOTO 标签”等效,这样上面的程序就不存在循环了。

关于DIR默认情况下的的显示数量问题。目前的情况是,所有磁盘(从A盘到H盘,包括邮件箱)的DIR默认显示数量其实都是相同的,都是22个,以保持一致性。不过,不久前我曾作了一个修改,那就是只有当实际文件数量大于这个数目导致有文件将不被显示时,才会显示那条提示信息,以告诉用户后面还有文件并可以用/A开关来显示,否则不显示那条信息(因为有时候某个目录(例如A盘)中只有一两个文件,远没有22个,如果不分情况一律显示的话感觉不太好)。但如果将提示信息放在后面却也可能影响美观,尤其是当用/S开关显示子目录下的文件的时候,而且DOS/CMD下的DIR命令的提示信息好像都是放在前面而非后面的。我已经将默认的22个改为20个,可能更好些。而NET FILE命令则不存在默认显示数量问题,因为它和DIR命令的情况不同。
作者: qzwqzwtest     时间: 2007-2-7 04:45
死循环的问题

我用IE6试了,确实可以适时Ctrl+C

然而换用Opera9.01仍然不理睬我的键入

终于因此升级Opera到9.10 8679 多国语言版

结果没有太大变化

也许是我的网络或系统配置与你有所区别的原因吧

不过,既然已确实是Opera的兼容性问题

就可以不必理会它了

等Opera自己来改进吧

--------------------------------------------

net file 的上限是指最多可以同时订阅的主题数

短信箱的上限则是指最多可存放的短信条数

如果它们是一个超大的数值自然不用理会

如果它们是一个可能会被突破的值则建议列出

-------------------------------------------

开始考虑type与more的功能重叠问题

如果将more的现有功能融合为type的一项开关选项

more则单独用做以后的管道操作中处理文本的工具

是否会更合理些呢?

--------------------------------------------

另外,现在我已找不到现有版本的更多问题

建议可以选择一个合适的时机推出正式版了

作者: Wengier     时间: 2007-2-7 16:19


  Quote:
Originally posted by qzwqzwtest at 2007-2-6 03:45 PM:
死循环的问题

我用IE6试了,确实可以适时Ctrl+C

然而换用Opera9.01仍然不理睬我的键入

终于因此升级Opera到9.10 8679 多国语言版

结果没有太大变化

也许是我的网络或系统配置与你有所区别的原因吧

不过,既然已确实是Opera的兼容性问题

就可以不必理会它了

等Opera自己来改进吧 ...

关于Ctrl+C强行中断的问题,我来详细说一下现在的处理情况吧。

的确,对于在非预期情况(而非普通状态)下判断Ctrl+C和Ctrl+Break的按键,在不同的浏览器下都有些不同。比如说在Firefox下它们的键值为Ctrl+99;在Opera下Ctrl+C的键值为Ctrl+3、Ctrl+Break的键值为Ctrl+67;而在IE下,Ctrl+Break的键值为Ctrl+3,而Ctrl+C则不返回键值。因此,为了同时支持包括IE、Firefox、Opera在内的浏览器,从加入此功能的一开始就只好对用户所用的浏览器进行检测并针对相应的浏览器来判断按键(包括采用一些特殊方法),使得最终Ctrl+C和Ctrl+Break键在我的IE、Firefox、Opera下都可以中断程序了。

从理论上来说,既然在我的电脑上的Opera(版本也是9.10 8679)中它们可以中断程序,在其它电脑上应该也是可以的。为了更好的测试,刚才我特意在VMware虚拟机中全新安装了一个Opera 9.10 8679多国语言版(我的真实机上则是英文版的),测试后发现Ctrl+C和Ctrl+Break键也可以正常中断程序。因此对于上面提到的问题,我觉得不太像是Opera自身的问题,而可能是其它原因造成的(比如设置问题?插件冲突?)。

不过,关于语言版本倒提醒我加入一个新功能,那就是自动根据浏览器的默认语言来选择相应的起始代码页。现在已支持当浏览器的默认语言为zh-cn/zh-sg/zh-chs的时候起始代码页为936,当为zh-tw/zh-hk/zh-mo/zh-cht的时候起始代码页为950,否则的话起始代码页将为437。但仍然可以用?cp=xxx参数来手工指定起始代码页,并可以用%codepage%环境变量来判断当前代码页。

论坛的主题订阅功能是不存在上限的,所以net file命令也没有文件上限;而用户的短消息的上限和目前的短消息数现在已可以用net user命令列出。

关于type与more的功能重叠问题。其实这个在现有的某些环境下也有体现,甚至更加明显,例如在Windows的“故障恢复控制台”中,两者的功能就是完全一致的(而more命令也无法用于管道操作)。在DOS/CMD下type命令都是没有开关的,而其more命令则与现在命令行界面的more命令功能相似(除不支持管道/重定向操作外),如果给type命令加上控制暂停的开关似乎有点违背DOS/CMD下的type和more命令的分工的初衷。同时考虑到管道操作实现起来相当复杂,是否可行都难以保证(要注意对I/O操作的支持是网页脚本语言的弱项),所以现在采取目前的这种分工可能还是更好些呢。

如果没有问题的话,一天内将发布正式版。
作者: Wengier     时间: 2007-2-8 03:58
既然没有发现问题,现在正式发布4.0正式版本!至此较大规模的更新将基本告一段落,应该已经比较实用和稳定了,不过如果有一些能完善的地方还可以继续进行完善。欢迎大家使用!地址仍然是:

http://www.cn-dos.net/forum/cmdprmt.php
作者: electronixtar     时间: 2007-2-11 14:24
支持,顶~~~Wengier辛苦了~~
作者: dinfli     时间: 2007-2-28 10:37
支持,好东丁!
作者: wei7120     时间: 2007-3-16 01:18
谢谢·!
作者: scriptor     时间: 2007-3-27 08:52


  Quote:
Originally posted by qzwqzw at 2007-1-18 10:04:
发现一个小问题

在type或者more完一些帖子(如26674#4)后

显示中的缩进没有完全恢复

如果反复type d:\23\26674 4会将缩进效果不断累积

猜测是因为帖子中使用了未闭合或者错误的Discuz! 代码

突然发现
仁兄引了我的帖子

而且还是在cmd模式下

今天我一时好奇
输入了你的那个命令行

突然发现这个市我发的
呵呵。。。
谢谢了!
作者: beijingju     时间: 2007-4-4 10:31
厉害,惭愧……………………
作者: XinDOS     时间: 2007-4-6 10:40
太棒了,不错的创意,谢谢 ........
作者: 0487     时间: 2007-4-10 00:04
唉,可惜不能对电脑发出命令,
作者: lxmxn     时间: 2007-4-10 07:31


  Quote:
Originally posted by 0487 at 2007-4-9 11:04:
唉,可惜不能对电脑发出命令,


要设置成“能对电脑发出命令”也不是很难,只要站长修改一下就可以啦,不知道站长会不会去着手弄。

作者: siai88     时间: 2007-4-16 06:13
不知道 怎么用看来要好好学了
作者: netuer     时间: 2007-5-2 11:36
还有这样好玩的东东。呵呵。学习下,一会体验啊。
作者: 546474     时间: 2007-5-3 08:25
看着头晕.
作者: itaps0354     时间: 2007-5-6 00:14
我没有DOS基础,很想学习DOS的操作,要想学会看来不是那么容易。
作者: hahahakk     时间: 2007-5-14 20:34
一来就发现这个。。强啊。。。没来错地方。
作者: q378648220     时间: 2007-6-24 20:47
我试验过的看贴命令
dir c:\1
dir d:9
作者: q378648220     时间: 2007-6-24 20:50
dir c:\1
dir d:\9
dir e:\7
作者: SHOCIAA     时间: 2007-7-2 12:12
为什么有时论坛命令提示符的界面会自动刷新?
还有,论坛中有的帖子会超出浏览器的宽度,又没有滚动条,无法完全显示。
作者: dxcana     时间: 2007-7-6 12:30
不知道这个提供源码下载么...
作者: qingye     时间: 2007-8-2 12:50
怎么没有 for 命令啊?
我是新手。懂一点点dos,
不懂chcp,但是,我想,for命令这么的强大,为啥我找不到?
请提示~!
作者: zwdeee     时间: 2007-8-25 08:52
这个系统很好玩
作者: worio2004     时间: 2007-9-1 13:15
太爽了,支持啊
作者: lengleibo     时间: 2007-9-1 16:54
从0开始学DOS
收藏了!!
作者: sht0602     时间: 2007-9-13 16:19
那是相当的有魅力啊!~
这个命令行的很牛比
呵呵
作者: sht0602     时间: 2007-9-13 17:00
我现在就在命令行下看帖啊!~
太帅了,楼主!~
很厉害!
I服了YOU
作者: sht0602     时间: 2007-9-13 17:18    标题: 命令行方式登陆出现错误

急~~
命令行方式登陆出现错误
我先进入网站的命令行界面,然后用“NET LOGON 用户名 密码”登陆
怎么说是密码错误???
作者: 6692836     时间: 2007-9-13 17:35
很好啊,支持!
作者: yuhao     时间: 2007-9-24 09:38
支持dos!!!  联盟万岁   大家辛苦了!
作者: skyforever     时间: 2007-9-30 19:48
很怀旧的东西,

希望能有此方面的资料,我们也学习学习。
作者: lmm333     时间: 2007-10-11 16:44
看得朦朦胧胧,迷迷糊糊,跟雾里看花,水中望月差不多,看得出Wengier
兄的文笔优美!!让人读后有种晕晕的纯美感受。
  想请问下Wengie同学,像俺这种生在红旗下,长在新社会,只会用鼠标,从没用过DOS,从XP开始接触电脑的后来者,能够大概搞懂这些需要多久?俺都不敢说精通这个词了,只盼能学会就成了,虽然俺只是一时兴趣所至,不知这股激情能燃烧多久……
作者: vijedy     时间: 2007-10-19 13:48
和114楼的相同问题 :用“NET LOGON 用户名 密码”登陆,
提示为“登录失败。请检查您的用户名和密码”
作者: kgdetg1127     时间: 2007-12-3 21:38
狂顶上去!!
作者: starshowp     时间: 2007-12-10 15:59
OMG...
作者: delcat     时间: 2007-12-24 22:26
楼主的网站访问不了啦
作者: rootkit     时间: 2008-1-4 17:30    标题: 不错

版主能否把命令行版本的实现原理及过程告诉我?我对命令行非常感受兴趣。
我的邮箱:ljh.artist@163.com
谢谢版主。
作者: hly     时间: 2008-1-11 15:51
呵呵^^^终于会在DOS下回帖了~~~昨晚想了好久,都不知道该怎么办,今天才看到这个帖子,,,,,
我这个会员不够称职啊~~~~
我会引以为戒~~~~~一定做个称职的好会员~~~~

作者: lzl0532     时间: 2008-1-11 17:08
这个论坛的管理人员真厉害,这都能想到。佩服
作者: wwwcccyyy     时间: 2008-1-12 16:00
还真不习惯DOS下的论坛,虽然以前也用过相当长的DOS
作者: binghuoxk     时间: 2008-1-17 13:14
谢谢分享
作者: Wengier     时间: 2008-1-22 07:52


  Quote:
Originally posted by vijedy at 2007-10-19 01:48 PM:
和114楼的相同问题 :用“NET LOGON 用户名 密码”登陆,
提示为“登录失败。请检查您的用户名和密码”

这不是命令提示符界面本身的问题,而是数据的问题。再试试看看。
作者: z640919a     时间: 2008-2-6 18:06    标题: 在dos下回帖看看

rt,在dos下回帖看一下是怎样的.

作者: Hilee     时间: 2008-2-12 10:27
话说FireFOX貌似不能用……
作者: Wengier     时间: 2008-2-12 11:49


  Quote:
Originally posted by Hilee at 2008-2-12 10:27 AM:
话说FireFOX貌似不能用……

Firefox绝对能用。我自己现在用的就是。
作者: songyzh     时间: 2008-5-30 11:18
支持下!
作者: wangzenggogo     时间: 2008-5-31 10:07
还是不会用
作者: danjiang     时间: 2008-7-2 13:31
确实很有创意
作者: whaily     时间: 2008-7-21 23:42
支持下,好好学习中。
作者: jipinshangren     时间: 2008-8-17 16:38
很好!又可以学到命令的使用,又能浏览论坛。两不耽误!谢谢,站长们的辛勤劳动!
作者: mbss     时间: 2008-9-12 22:40
学习了
支持
怎么没法收藏
作者: alchemist     时间: 2008-11-27 17:42
该论坛是对火狐兼容最好的网站之一,其他论坛点个引用都引不了
作者: nitian1     时间: 2009-2-5 12:08    标题: dos过时了吗?

dos过时了吗?现在会dos出去能做什么?请个位站长和楼上的朋友帮帮,给我介绍工作
作者: JUE1980TH     时间: 2009-4-1 14:11
在有些时候可以提高工作效率,要不路由器,交换机还用命令提示符呢?
作者: qaz1359814     时间: 2009-4-23 00:57    标题: 不错


作者: wedark     时间: 2009-5-12 10:06    标题: 强!

我是一名在校中职生,本是怀着一腔热血进入中职的,而后的可惜不必说了。
学DOS,是偶在书店买了一本DOS命全集。
学DOS就是感到特牛气。
这网站对我口味。
可惜了学了,几个月了,还只能拿出几个命令来。做出几个简单的秕处理。
世代变了,老的东西现在还记得人,真的太少了。
仅我小小技量,就能让我那帮同学,直呼惊奇,可在此我才感到自己是多么的不足。

作者: luoxuechuihua     时间: 2009-6-1 02:40
这个功能不错
可以更好地学习DOS了
呵呵呵
作者: li9527     时间: 2009-7-7 05:05
佩服佩服!!!!这项技术不错!!!
作者: init0     时间: 2009-9-17 11:06
新手,努力学习中

作者: dayley     时间: 2010-1-25 11:33
博大精深,看到头都大了!
作者: xinglongpu     时间: 2010-1-29 10:34
太强了
作者: qinchun36     时间: 2010-2-6 07:47
是否能够将页面字体优先选用 fixedsys 呢,这样就跟命令行窗口看起来更像了。
像这样

Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.

C:\Documents and Settings\issuser>ping www.cn-dos.net

Pinging www.cn-dos.net [58.215.76.156] with 32 bytes of data:

Reply from 58.215.76.156: bytes=32 time=52ms TTL=50
Reply from 58.215.76.156: bytes=32 time=53ms TTL=50
Reply from 58.215.76.156: bytes=32 time=56ms TTL=50
Reply from 58.215.76.156: bytes=32 time=57ms TTL=50

Ping statistics for 58.215.76.156:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 52ms, Maximum = 57ms, Average = 54ms

C:\Documents and Settings\issuser>

作者: ACW     时间: 2010-3-13 14:18


  Quote:
Originally posted by qinchun36 at 2010-2-6 07:47 AM:
是否能够将页面字体优先选用 fixedsys 呢,这样就跟命令行窗口看起来更像了。
像这样
[box=#111111]
Microsoft Windows XP [版本 ...

在A:\AUTOEXEC.BAT中加一句FONT 2命令即可.
作者: wolfan     时间: 2010-4-3 12:35
如此强大的是怎么做出来的?
呜呼~ 神品呀!
作者: pan528     时间: 2010-4-19 13:07
怎么COPY /? 也不能提供?
作者: heianjili     时间: 2010-5-5 06:32
狂顶!
作者: heianjili     时间: 2010-5-5 06:32
真的牛B的!
作者: FreeSir     时间: 2010-5-16 13:01
命令行模式,很聪明的点子,
祝中国DOS联盟越办越火!
作者: 54master     时间: 2010-5-24 17:01
新手 学习中
作者: xiongyi2     时间: 2010-5-27 14:37
汗 看的头晕死了
作者: jinzihao     时间: 2010-7-31 10:12
冒昧的问一句,"命令提示符"能不能开源?就是把cmdprmt.php文件提供给大家下载?
作者: tsy795     时间: 2010-12-18 15:49
支持支持呵呵
作者: zzz19760225     时间: 2018-1-8 07:32
编辑帖子用EDIT?
作者: jshan888     时间: 2022-5-25 10:48
学习了,好强大的功能啊,
作者: chenyucheng     时间: 2023-7-22 12:06    标题: 该怎么查看帖子啊?

为什么进入板块后,输入 type xxx,老是说“找不到文件”?
作者: chenyucheng     时间: 2023-7-22 12:13    标题: 回复『第 141 楼』:



  Quote:
Originally posted by ACW at 2010-3-13 14:18:


在A:\AUTOEXEC.BAT中加一句FONT 2命令即可.

现在新的浏览器已经不能使用FixedSys之类的点阵字体了。

FixedSys字体能显示吗?The quick brown fox jumps over the lazy dog.
作者: AlexZhang     时间: 2023-7-23 11:06


  Quote:
Originally posted by chenyucheng at 2023-7-21 20:13:


现在新的浏览器已经不能使用FixedSys之类的点阵字体了。

FixedSys字体能显示吗?The quick brown fox jumps over the lazy dog.

这个等等我去修一下
作者: chenyucheng     时间: 2023-9-30 12:59


  Quote:
Originally posted by chenyucheng at 2023-7-22 12:06:
为什么进入板块后,输入 type xxx,老是说“找不到文件”?

快点回复原因啊。为什么执行评论区里的一个type代码还是不行,还是找不到文件?(已经把序号粘贴到https://www.cn-dos.net/forum/viewthread.php?tid=后面测试了,明明有此帖子的)
快点回复原因啊!