我很高兴分享我最喜欢的 26 个 FreeDOS 命令。我家最早的一批计算机中有一台运行着一款名称为 DOS 的命令行操作系统，即 “ 磁盘操作系统 Disk Operating System ”。我是在 DOS 系统环境中长大的，学会了利用命令行来使我的工作更轻松。很多其他的人也是如此。我们非常爱 DOS ，所以在 1994 年 6 月 29 日，我们创建了 FreeDOS 工程。如果你的 FreeDOS 的初学者，你可能会对如何使用其附带的不同的命令行程序感到困惑。让我们从我最喜欢的 26 个 FreeDOS 命令开始吧。要学习更多的信息，在大部分命令的后面添加 /? 选项来获取更多的信息:C:\>attrib /? ATTRIB v2.1 - 显示或更高文件属性。 版权所有 (c) 1998-2003，遵循 GPL2 协议。 语法：ATTRIB { options | [path][file] | /@[list] } 选项： +H 设置隐藏属性。 -H 清除隐藏属性。 +S 设置系统属性。 -S 清除系统属性。 +R 设置只读属性。 -R 清除只读属性。 +A 设置存档属性。 -A 清楚存档属性。 /S 处理具体指定路径中的所有目录中的文件。 /D 处理带有通配符的参数的目录名称。 /@ 处理文件，文件列在具体指定文件 中 [或 stdin]。 示例： attrib file -rhs attrib +a -r dir1 dir2*.dat /s attrib -hs/sd /@list.txt *.* A 是 ATTRIBATTRIB 程序显示或更改文件的 属性 。属性可以是以下四个值之一：隐藏（H）、系统 S）、只读（R）、存档（A）。标记为隐藏的文件将不会在目录列表中显示。例如，假设你想隐藏一个名称为 SECRET.TXT 的文件，这样就不会有人它在那里。首先，你可以显示该文件的属性，以便查看它的当前设置：C:\FILES>attrib secret.txt [----A] SECRET.TXT 为隐藏这个文件，使用加号（+）操作符来开启用隐藏属性，像这样：C:\FILES>attrib +h secret.txt [----A] -> [-H--A] SECRET.TXT C:\FILES>dir Volume in drive C is FREEDOS2022 Volume Serial Number is 333D-0B18 Directory of C:\FILES . 05-27-2022 9:22p .. 05-27-2022 9:22p 0 file(s) 0 bytes 2 dir(s) 279,560,192 bytes free ATTRIB 的另一种常见使用方法是操作只读属性，这样你就不会意外地覆盖重要的文件。假设你想要保护 SECRET.TXT 文件，这样你就不能删除或更改它。使用 +R 修饰符 ，打开只读属性，像这样:C:\FILES>attrib +r secret.txt [----A] -> [---RA] SECRET.TXT C:\FILES>del secret.txt C:\FILES\SECRET.TXT: Permission denied no file removed. B 是“哔哔”声如果你需要在一个批处理文件中添加一些激情活力，你可以使用 BEEP 命令来获取用户的注意力。BEEP 不会在屏幕上显示任何内容，但是会简单地发出一个 “哔哔” 的声音信号。注意：BEEP 使用个人计算机内置的扬声器来发出 “哔哔” 声。如果你使用一台虚拟机器来引导启用 FreeDOS，检查你的系统是否建立正确的模拟个人计算机扬声器。否则，你将不会听到任何声音。C 是 CD像 Linux 一样，FreeDOS 支持目录，这会允许你以一种来你有帮助的方式来组织你的文件。例如，你可以在一个名称为 FILES 的目录中存放你的全部文件，对于某些类型的文件，你可能会有其它的目录，例如，针对字处理器文件的 DOCS ，或者针对表格文件的 SPRDSHT。你可以使用 CD（即 “ 更改目录 change directory ”） 命令来导航到一个目录。CHDIR 命令和 CD 命令一样，如果你更喜欢使用这种语法的话。为更改到一个新的目录，使用 CD 目录和目标目录：C:\>cd files C:\FILES>cd sprdsht C:\FILES\SPRDSHT>dir Volume in drive C is FREEDOS2022 Volume Serial Number is 333D-0B18 Directory of C:\FILES\SPRDSHT . 05-27-2022 9:59p .. 05-27-2022 9:59p FIB WKS 2,093 05-27-2022 10:07p LAB1 WKS 2,087 05-27-2022 10:10p MIS100 WKS 2,232 05-27-2022 10:05p 3 file(s) 6,412 bytes 2 dir(s) 279,527,424 bytes free 你不必一次导航一层目录。相反，你可以使用一个 CD 命令和提供完整的你想要更改到的目录路径:C:\>cd \files\sprdsht C:\FILES\SPRDSHT>dir Volume in drive C is FREEDOS2022 Volume Serial Number is 333D-0B18 Directory of C:\FILES\SPRDSHT . 05-27-2022 9:59p .. 05-27-2022 9:59p FIB WKS 2,093 05-27-2022 10:07p LAB1 WKS 2,087 05-27-2022 10:10p MIS100 WKS 2,232 05-27-2022 10:05p 3 file(s) 6,412 bytes 2 dir(s) 279,527,424 bytes free D 是 DELTREE如果需要删除一个单个文件，你可以使用 DEL 命令。为删除一个空的目录，你可以使用 RMDIR 或 RD 命令。但是，如果你想删除一个有很多文件和子目录的目录?一个包含有其它目录的目录称为 目录树 。你可以使用 DELTREE 命令来删除整个目录树。例如，为删除你的 FILES 目录，包括其中包含的所有的文件和目录，输入这个命令:C:\>deltree files [DEFAULT-BUILD v1.02g] of DELTREE. The "ROOT-SAFETY-CHECK" is enabled. Delete directory "C:\FILES" and all its subdirectories? [Y] [N] [Q], [ENTER] ? Y ==> Deleting "C:\FILES" ... 你可以使用一个单一的 DELTREE 命令来轻松快捷地完成很多工作，因此，FreeDOS 的 DELTREE 提示会询问你是否真的想要这样做。谨慎地使用这个命令。E 是 EDIT如果你需要在 FreeDOS 上编辑一个文本文件，EDIT 程序会让你轻松快速地完成任务。例如，要开始编辑一个名称为 HELLO.TXT 的文件，输入 EDIT HELLO.TXT 。如果 HELLO.TXT 文件已经存在，EDIT 打开文件并开始编辑。如果 HELLO.TXT 尚未存在，那么 EDIT 为你开启一个新的文件。FreeDOS 的 EDIT 使用了一种友好的界面，对大多数人来说应该很容易使用。使用菜单来访问 EDIT 的各种特色功能，包括保存文件、打开一个新的文件、或者退出编辑器。为访问菜单，在你的键盘上按下 Alt 按键，然后使用箭头按键来避开和进入选择的动作。F 是 FIND如果你需要在一个文件中查找文本，FIND 命令可以完成这项工作。类似于在 Linux 上的 fgrep ，FIND 会打印一些包含一个字符串的行。例如，为检查 FDCONFIG.SYS 文件中的 "Menu Default" 条目项，像这样使用 FIND :C:\>find "MENUDEFAULT" fdconfig.sys ---------------- FDCONFIG.SYS MENUDEFAULT=2,5 如果你不确定你想要查找的字符串是使用的大写字母还是小写字母，添加 /I 选项来忽略字母的大小写情况:C:\>find /i "menudefault" fdconfig.sys ---------------- FDCONFIG.SYS MENUDEFAULT=2,5 G 是 GRAPHICS如果你想要捕捉屏幕，你可以使用你键盘上的 PrtScr（ 打印屏幕 Print Screen ）按键来直接将你显示器上的文本打印到打印机上。不过，这只对纯文本来说有效。如果你要打印图形屏幕，你需要加载 GRAPHICS 程序。GRAPHICS 支持不同的打印机类型，包括 HP 的 PCL 打印机、Epson 的点阵打印机，和兼容 PostScript 的打印机。例如，如果有一台连接到你的计算机的 HP 的激光打印机，你可以通过输入这条命令来为这台打印机加载支持:C:\>graphics hpdefault Running in MS GRAPHICS compatibility mode... Using HPPCL type for type hpdefault If you think this is not correct, mail me (see help text). Printing black as white and white as black which internally uses /I of this GRAPHICS. You can use the following command directly instead of GRAPHICS [your options] in the future: LH GRAPH-HP /I Note that GRAPH-HP allows extra options: /E economy mode, /1 use LPT1, /2 use LPT2, /3 use LPT3, /R for random instead of ordered dither /C for 300dpi instead of 600dpi Driver to make 'shift PrtScr' key work even in CGA, EGA, VGA, MCGA graphics modes loaded, in HP PCL mode. H 是 HELP如果你刚刚来到 FreeDOS 的世界，你可以通过输入 HELP 来获取如何使用不同命令的提示。这将带来 FreeDOS 的帮助系统，包含所有命令的文档:I 是 IF你可以使用 IF 语句来将条件语句添加到你的命令行或批处理文件 。IF 进行一次简短的测试，然后执行一个单个命令。例如，如果存在某个文件，那么打印结果 “It's there”，你可以输入:C:\>if exist kernel.sys echo It's there It's there 如果你想要测试相反的东西，在测试内容前，使用 NOT 关键字。例如，如果两个字符串的值不相同，那么打印结果 “Not equal” ，输入这条语句:C:\>if not "a"=="b" echo Not equal Not equal J 是 JOIN早期的 DOS 版本是相当简单的；DOS 的第一个版本甚至不支持目录。为向这些较旧的程序提供向后兼容性，我们需要 JOIN 程序来作为一种巧妙的应变方法。JOIN 使用驱动器字母代替路径，这样，你可以将旧程序放入其自己的子目录中，但是，使用一个单个驱动器字母来访问它。让我们假设你有一个名称为 VC 的旧应用程序，它不懂目录。为保持 VC 的工作，你可以将它的路径 连接 join 到一个驱动器字母。例如:JOIN V: D:\VC FreeDOS 将 JOIN 实施为 SWSUBST，它也兼备类似 SUBST 命令的特色功能。为将 D:\VC 路径链接到到一个名称为 V: 的驱动器字母，输入:C:\>swsubst v: d:\vc C:\>dir v: Volume in drive V is DATA Volume Serial Number is 212C-1DF8 Directory of V:\ . 02-21-2022 10:35p .. 02-21-2022 10:35p VC COM 27,520 07-14-2019 4:48p 1 file(s) 27,520 bytes 2 dir(s) 48,306,176 bytes free K 是 KEYBDOS 默认采用美式英语键盘布局。你的键盘是不同的，你可以使用 KEYB 命令来加载新的键盘语言布局。例如，为为加载一种德语键盘布局，输入:C:\>keyb gr FreeDOS KEYB 2.01 - (c) Aitor Santamaría Merino - GNU GPL 2.0 Keyboard layout : C:\FREEDOS\BIN\KEYBOARD.SYS:GR [858] (3) L 是 LABELFreeDOS 使用 标签 label 来命名每个软盘驱动器和硬盘驱动器。这些标签提供了一种识别磁盘可能包含内容的方法。当你需要将文件存储到单个不同的软盘上时，LABEL 命令是非常有用的，你可以标记一个软盘 “Data”，另一个软盘为 “Games” 。为分配一个新的标签到一个驱动器。或者更改在一个驱动器上的现存标签。像这样使用标签:D:\>label d: data D:\>dir /w Volume in drive D is DATA Volume Serial Number is 212C-1DF8 Directory of D:\ [123] [ABILITY] [ASEASY] [GAMES2] [QUATTRO] [SRC] [TEMP] [THE] [VC] [WORD] [WS400] EDLIN16.EXE EDLIN32.EXE MYENV.BAT 3 file(s) 113,910 bytes 11 dir(s) 48,306,176 bytes free M 是 MEM运行程序和加载驱动程序会占用内存。可以查看你的系统有多少内存，以及有多少可用来运行 DOS 程序，使用 MEM 命令:C:\>mem Memory Type Total Used Free ---------------- -------- -------- -------- Conventional 639K 11K 628K Upper 104K 18K 86K Reserved 281K 281K 0K Extended (XMS) 15,224K 537K 14,687K ---------------- -------- -------- -------- Total memory 16,248K 847K 15,401K Total under 1 MB 743K 29K 714K Total Expanded (EMS) 8,576K (8,781,824 bytes) Free Expanded (EMS) 8,192K (8,388,608 bytes) Largest executable program size 628K (643,104 bytes) Largest free upper memory block 84K ( 85,728 bytes) FreeDOS is resident in the high memory area. N 是 NANSI如果你想添加一点颜色到 FreeDOS 命令行，你可以使用 ANSI 转义序列。这些序列之所以叫“转义”，是因为每个序列都以代码 33（转义字符 ESC）和一个由美国国家标准化协会（ANSI）定义的特殊字符序列为开头。FreeDOS 通过 NANSI.SYS 驱动程序来支持 ANSI 转义序列。随着 NANSI 的加载，你的 FreeDOS 控制台将解释 ANSI 转义序列，例如，设置文本颜色。O 是 oZoneFreeDOS 是一款命令行操作系统，但是一些人们更喜欢使用可备选的图形化用户界面。这就是为什么 FreeDOS 的 1.3 发行版包含一些图形化桌面的原因。我喜欢的一款名称为 oZone 的图形化桌面，它提供一种时尚、现代化外观的界面。注意，oZone 有一点烦人的错误，可能还需要一些来自外部开发者的关爱。如果你想让 oZone 变得更好，可以下载源文件代码做些贡献。P 是 PROMPT标准的 FreeDOS 命令行提示符会告诉你：你所在文件系统中的位置。当你第一次启动 FreeDOS 时，你的提示符看起来像 C:\>, 这意味着 \（根）目录在 C: 驱动器。> 字符表示着你可以在那里输入命令。在你的提示符中，如果你更喜欢不同的信息，使用 PROMPT 目录来更改它。你可以使用一个带有 $ 的开头的特殊代码来显示不同的信息，例如，$D 用于日期、$T 用于时间。例如，你可以使用 $$ 指令来使你的 FreeDOS 命令行看起来像一个 Linux 提示符，来打印一个单个美元符号:C:\>prompt $$ $ 输入 PROMPT /? 来查看一份全部特殊代码的列表。Q 是 QBASICFreeDOS 实际上没有 QBASIC 。它是针对 MS-DOS 的专有 BASIC 语言环境。作为备选方案，我们提供一些开放源文件的编译器，包括一些针对 BASIC 编程的编译器。FreeBASIC 编译器可以编译外来的大多数 QBASIC 程序。这里有一个简单的 “猜数” 示例:dim number as integer dim guess as integer randomize timer number = int( 10 * rnd() ) + 1 print "Guess the number from 1 to 10:" do input guess if guess < number then print "Too low" if guess > number then print "Too high" loop while guess <> number print "That's right!" 使用 FBC 命令来编译 FreeBASIC 程序:C:\DEVEL\FBC>fbc guess.bas 这里是这个简单游戏的快速演示:C:\DEVEL\FBC>guess Guess the number from 1 to 10: ? 5 Too high ? 3 Too low ? 4 That's right! R 是 REM在编写程序时，注释是极好的；注释帮助我们理解程序应该要做什么。可以在批处理文件中使用 REM 来做同样的事。在批处理文件中，在 REM 的后面的任何东西都将会被忽略。REM this is a comment S 是 SETFreeDOS 命令行使用一系列称为 环境变量 environment variables 的变量，让你来自定义你的系统。你可以使用 SET 命令来设置这些变量。例如。使用 DIRCMD 变量来控制 DIR 如何排列目录列表。为设置 DIRCMD 变量，使用 SET 命令:SET DIRCMD=/O:GNE 这告诉 DIR 先按照目录分组（G）来排序（O）输出，然后再按照名称（N）和扩展名（E）来排序结果。T 是 TYPETYPE 命令是最常使用的 DOS 命令之一。TYPE 显示一个文件的内容，类似于在 Linux 上的 cat 。C:\DEVEL>type hello.c #include int main() { puts("Hello world"); return 0; } U 是 UNZIP在 Linux 上，你可能更熟悉标准的 Unix 存档命令: tar。在 FreeDOS 上也有一个 tar 版本（和其它大量的流行的存档程序），但是，在 DOS 上的事实上的标准的存档命令是 ZIP 和 UNZIP 。两者都默认安装在 FreeDOS 1.3 之中。比如说，我有一些文件的一个 zip 存档。如果我想提取整个 Zip 文件，我可以只使用 UNZIP 命令，并将 Zip 文件作为命令行的选项来提供。这将在我当前工作目录中开始提取存档文件。除非我正在恢复一些东西的先前版本，我通常不希望覆盖我的当前文件。在这种情况下，我将提取存档到一个新的目录。你可以使用 -d（“ 目标 destination ”）命令行选项来具体指定目标路径：D:\SRC>unzip monkeys.zip -d monkeys.new Warning: TZ environment variable not found, cannot use UTC times!! Archive: monkeys.zip creating: monkeys.new/monkeys/ inflating: monkeys.new/monkeys/banana.c inflating: monkeys.new/monkeys/banana.obj inflating: monkeys.new/monkeys/banana.exe creating: monkeys.new/monkeys/putimg/ inflating: monkeys.new/monkeys/putimg/putimg.c inflating: monkeys.new/monkeys/putimg/putimg.obj inflating: monkeys.new/monkeys/putimg/putimg.exe 为学习更多关于 ZIP 和 UNZIP 命令的信息，可以阅读 如何在 FreeDOS 上存档文件。V 是 VER在 DOS 的古老岁月中，VER 命令会报告你正在运行的 DOS 发行版本，例如：“MS-DOS 5.0.D”。对于 FreeDOS，VER 命令将给予你额外的详细信息，例如 FreeDOS Shell 的版本:C:\DEVEL>ver FreeCom version 0.85a - WATCOMC - XMS_Swap [Jul 10 2021 19:28:06] 如果你还想查看 FreeDOS 内核版本和 DOS 兼容性等级，添加 /R 选项:C:\DEVEL>ver /r FreeCom version 0.85a - WATCOMC - XMS_Swap [Jul 10 2021 19:28:06] DOS version 7.10 FreeDOS kernel 2043 (build 2043 OEM:0xfd) [compiled May 14 2021] W 是 WHICHFreeDOS 命令行可以运行来自记录在 PATH 变量中的不同的目录列表的程序。你可以使用 WHICH 命令来准确地识别出程序的位置。只需要输入 WHICH 加上你想要定位的程序名称：C:\>which xcopy xcopy C:\FREEDOS\BIN\XCOPY.EXE X 是 XCOPYCOPY 命令只能将文件从一个位置复制到另一个位置。如果你想扩大复制的范围来包括一些目录，使用 XCOPY 命令。我通常添加 /E 选项来包含所有的子目录，包括空的子目录，这样，我可以复制整个目录树。这样就可以有效地备份我正在工作的任意工程:D:\SRC>xcopy /e monkeys monkeys.bak Does MONKEYS.BAK specify a file name or directory name on the target (File/Directory)? d Copying D:\SRC\MONKEYS\PUTIMG\PUTIMG.C Copying D:\SRC\MONKEYS\PUTIMG\PUTIMG.OBJ Copying D:\SRC\MONKEYS\PUTIMG\PUTIMG.EXE Copying D:\SRC\MONKEYS\BANANA.C Copying D:\SRC\MONKEYS\BANANA.OBJ Copying D:\SRC\MONKEYS\BANANA.EXE 6 file(s) copied Y 是 Yellow这不是一个命令，而是关于 DOS 如何显示颜色的有趣的百科知识。如果你仔细留心过 FreeDOS，你可能已经注意到，文本只能获取有限的颜色范围—— 十六种文本颜色、八种背景颜色。IBM 的 5153 彩色显示器，通过点亮不同亮度等级的微小的红、绿、蓝荧光点的方式创建 16 种文本颜色和 8 种背景颜色来为用户显示颜色。早期的个人计算机只能以“标准强度”级别来显示背景颜色；只有文本颜色可以使用明亮颜色。如果你查看文本颜色，你有黑色、蓝色、绿色、蓝绿色、红色、品红色、橙色和白色。这些颜色的“明亮”版本有亮黑色（暗灰色）、亮蓝色、亮绿色、亮蓝绿色、亮红色、亮品红色、黄色和亮白色。橙色的“明亮”版本有实际上是黄色。没有“亮橙色”。如果你想要学习更多关于文本颜色的信息，阅读我们关于 FreeDOS 为什么有 16 种颜色 的文章。Z 是 ZIP你可以在 DOS 命令行中使用 ZIP 来创建文件和目录的存档。这是一种很便利的方法：可以备份你的工作，或者发布一个 “软件包” 来在未来的 FreeDOS 发行版中使用。例如，比如说，我想备份我的工程源文件代码，其中包含这些源文件文件:D:\SRC>zip -9r monkeys.zip monkeys zip warning: TZ environment variable not found, cannot use UTC times!! adding: monkeys/ (stored 0%) adding: monkeys/banana.c (deflated 66%) adding: monkeys/banana.obj (deflated 26%) adding: monkeys/banana.exe (deflated 34%) adding: monkeys/putimg/ (stored 0%) adding: monkeys/putimg/putimg.c (deflated 62%) adding: monkeys/putimg/putimg.obj (deflated 29%) adding: monkeys/putimg/putimg.exe (deflated 34%) ZIP 支持很多命令行选项来完成不同的工作，但是，我使用最多的命令行选项是： -r 用于递归处理目录和子目录、-9 用于提供尽可能大的压缩比。ZIP 和 UNZIP 使用类 Unix 命令行，因此，你可以在短划线后面合并选项: -9r 将在 Zip 文件中给予最大压缩比和包括子目录。关于如何使用 ZIP 和 UNZIP 命令的更多详细信息，阅读 如何在 FreeDOS 上存档文件。新的 FreeDOS 指南准备好你的 FreeDOS 旅程的下一步了吗?查看我们的新的电子书，现在开始尝试我们的 FreeDOS !FreeDOS 使用指南深入 FreeDOS 高级指南（题图：MJ/0b21dcc8-4c8d-457b-9e0d-fbbe5dd08c60）via: https://opensource.com/article/22/6/26-freedos-commands作者：Jim Hall 选题：lkxed 译者：robsean 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
FreeDOS 提供了一个叫做 FreeDOS Edit 的用户友好的文本编辑器。在任何操作系统中，编辑文件都是一项常有的任务。当你想去做一个某事的笔记、写封信给朋友或升级一个系统配置 —— 你需要一个文本编辑器。FreeDOS 提供了一个用户友好的文本编辑器（也许没啥想象力）叫做 “FreeDOS Edit”。编辑文件最简单的启用 FreeDOS Edit 的方式就就是输入 EDIT。它提供一个空的编辑器窗口。图案背景显示为一个空的“桌面”——提醒你没有编辑任何文件。就像多数 DOS 应用程序一样，你可以按下你键盘上的 Alt 键来访问 Edit 的菜单。这就激活了这个菜单。在你按下 Alt 后，Edit 将切换到“菜单”访问方式，并高亮 “ 文件 File ” 菜单。如果你想要访问菜单栏上的一个不同的菜单，可以使用左右方向键。按向下的方向键并按下回车键来“进入”菜单。你注意到所有菜单标题的第一个字母是不同的颜色么？这种高亮字母显示了一种快捷方式。例如，“ 文件 File ”菜单的“F”高亮为红色。所以你可以按下 Alt+F（Alt 和 F 同时按下），Edit 会显示“ 文件 File ”菜单。你可以使用“ 文件 File ”菜单来开始一个新的（空）文件，或打开一个存在的文件。让我们开始一个新文件，使用方向键移动到“ 新建 New “然后按下回车键。你也可以用 Ctrl+N （Ctrl 和 N 同时按下）打开一个新文件。此后，编辑文件应该非常简单。大多数熟悉的快捷键都可以在 FreeDOS Edit 中使用：Ctrl+C 复制文本，Ctrl+X 剪贴文本，和 Ctrl+V 将复制的或剪贴的文本粘贴到新的地方。如果你需要在一个长文档中寻找一个特殊文本，按下 Ctrl+F。保存你的工作成果，请使用 Ctrl+S 以将变更提交到硬盘。在 Edit 中编程如果你是个程序员，你也许会发现扩展的 ASCII 表是一个有用的工具。DOS 系统支持“拓展的” ASCII字符集，通常被称之为“代码页 437”。0 到 127 的标准字符包括字母 A 到 Z（大写和小写）、数字和特殊字符，如标点符号。但是，从 128 到 255 的 DOS 拓展字符包括其它语言字符和“画线”元素。DOS 程序员有时需要使用这些拓展 ASCII 字符，所以 FreeDOS Edit 可以很容易地查看所有 ASCII 码和它们的相关字符的表格。要查看这个 ASCII 表，请使用“ 工具 Utilities ”菜单，选择“ ASCII 表 ASCII Table ”菜单项，这将显示一个包含该表格的窗口。沿着左边，这张表显示十六进制值“00”到“F0”，顶部展示了单一值“0”到“F”。这些为每个字符的十六进制代码提供了一个快速参考。例如，第一行（00）和第一列（0）中的项目具有十六进制值 00 + 0，即0x00（“NULL”值）。而第五行（40）和第二列（1）中的字符，其数值为 40 + 1，即 0x41（字母 “A”）。当你在表格内移动光标高亮不同的字符时，你会看到表格底部的值发生变化，展示了字符的十进制、十六进制和八进制编码。例如，移动光标以高亮在 C0 行和第 5 列的“行交叉”字符，显示这个扩展字符的代码为 197（十进制）、0xc5（十六进制）和 305（八进制）。在一个程序中，你可以通过输入十六进制值 0xc5 或八进制“转义代码” \305 来引用这个扩展字符。请随意浏览 Edit 中的菜单，以发现其他不错的功能。例如，“ 选项 Options ”菜单允许你更改 Edit 的行为和外观。如果你喜欢使用更密集的显示，可以使用“ 显示 Display ”菜单（在“ 选项 Options ”下）将 Edit 设置为 25、43 或 50 行。你还可以强制 Edit 以单色（黑底白字）或反转模式（白底黑字）显示。（文内图片来自 Jim Hall，CC-BY SA 4.0）via: https://opensource.com/article/21/6/freedos-text-editor作者：Jim Hall 选题：lujun9972 译者：yjacks 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
Mplayer 是 Linux、Windows、Mac 和 DOS 等操作系统上常见的一款开源媒体播放器。听音乐是放松心情的好方法。在 Linux 上，我使用 Rhythmbox 听音乐。但是你可能不知道在 FreeDOS 上也可以听音乐。让我们看一下两款流行的音乐播放器吧：用 Mplayer 听音乐Mplayer 是一款开源的媒体播放器，通常安装于 Linux、Windows 和 Mac 上，但也有 DOS 版本可用。这里我们讨论的就是在 FreeDOS 版本。虽然其 DOS 移植版基于旧版（2007 年的 1.0rc2-3-3-2 版），但它完全适用于在 DOS 上播放媒体。我使用 MPlayer 在 FreeDOS 上听音乐文件。在这个例子中，我复制了我最喜欢的有声读物之一，Big Finish Productions 的 神秘博士：闪点行动 Doctor Who: Flashpoint ，并在我的 FreeDOS 计算机上将其保存为 C:\MUSIC\FLASHPNT.MP3。为了在 FreeDOS 上收听闪点行动，我从 FreeDOS 命令行启动 MPlayer 并指定要播放的 MP3 文件名。MPlayer 的基本用法是 mplayer [options] filename，如果默认设置可用，你应该可以直接使用该文件名启动 MPlayer。在本例中，我运行以下命令将工作目录切换为 \MUSIC，然后使用 MPlayer 播放我的 MP3 有声读物文件：CD \MUSIC MPLAYER FLASHPNT.MP3 FreeDOS 不区分大小写，因此它将忽略 DOS 命令和任何文件或目录的大小写字母的区别。你键入 cd \music 或 Cd \Music 都可以切换到 Music 目录，效果相同。你可以用 Mplayer 播放 MP3 文件使用 MPlayer 在 FreeDOS 播放音乐文件时没有花哨的界面。但同时，它也不会分散注意力。所以我可以一边让 FreeDOS 在我的 DOS 计算机上播放 MP3 文件，一边使用另一台计算机做其他事情。然而，FreeDOS 一次只运行一个任务（换句话说，DOS 是一个 单任务 single-tasking 操作系统），所以我不能将 MPlayer 置于 FreeDOS 的“后台”运行，而在 同一台 FreeDOS 机 上处理其他事情。请注意，MPlayer 是一个需要大量内存才能运行的大程序。虽然 DOS 本身并不需要太多的内存来运行，但我建议至少有 16M 的内存来运行 MPlayer。使用 Open Cubic Player 听音频文件FreeDOS 不止提供了 MPlayer 来播放媒体。还有 Open Cubic Player，它支持多种文件格式，包括 Midi 和 WAV 文件。1999 年，我录制了一段简短的音频文件，内容是我说：“你好，我是 Jim Hall，我把 ‘FreeDOS’ 发音为 FreeDOS。"这是一个玩笑，借鉴了 Linus Torvalds 录制的演示他如何发音 Linux 的 类似的音频文件（English.au，包含在 1994 年的 Linux 源代码树中）中的创意。我们不会在 FreeDOS 中分发这段 FreeDOS 音频剪辑，但欢迎你从我们的 Silly Sounds 目录中下载它，该目录位于 Ibiblio 的 FreeDOS 文件存档中。你可以使用 Open Cubic Player 收听 FreeDOS 音频剪辑。通常从 \APPS\OPENCP 目录键入 CP 命令运行 Open Cubic Player。但 Open Cubic Player 是 32 位应用程序，运行它需要 32 位 DOS 扩展器。常见的 DOS 扩展器是 DOS/4GW。虽然可以免费使用，但 DOS/4GW 不是开源程序，因此我们不会将其作为 FreeDOS 包分发。相反，FreeDOS 提供了另一个名为 DOS/32A 的开源32位扩展器。如果你在安装 FreeDOS 时没有安装所有内容，则可能需要使用 FDIMPLES 进行安装。我使用这两行命令切换到 \APPS\OPENCP 路径，并使用 DOS/32A 扩展器运行 Open Cubic Player：CD \APPS\OPENCP DOS32A CP Open Cubic Player 没有花哨的用户界面，但你可以使用方向键将 文件选择器 File Selector 导航到包含要播放的媒体文件的目录。Open Cubic Player 打开文件选择器文本比在其他 DOS 应用程序中显示的要小，因为 Open Cubic Player 会自动将显示更改为使用 50 行文本，而不是通常的 25 行。当你退出程序时，Open Cubic Player 会将显示重置为 25 行。选择媒体文件后，Open Cubic Player 将循环播放该文件（按键盘上的 Esc 键退出）。当文件通过扬声器播放时，Open Cubic Player 会显示一个频谱仪，以便你可以观察左右声道的音频。FreeDOS 音频剪辑是以单声道录制的，因此左右声道是相同的。Open Cubic Player 中播放 FreeDOS 音频文件DOS 可能来自较早的年代，但这并不意味着你不能使用 FreeDOS 来执行现代任务或播放当前的媒体。如果你喜欢听数字音乐，试一试在 FreeDOS上 使用 Open Cubic Player 或 MPlayer 吧！（题图由 Anselmo Pedraz 在 Pixabay 上发布）via: https://opensource.com/article/21/6/listen-music-freedos作者：Jim Hall 选题：lujun9972 译者：hanszhao80 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
硬核观察 #555 以太坊创始人说，加密货币冬天将受到顶级开发者的欢迎
以太坊创始人说，加密货币冬天将受到顶级开发者的欢迎最近几周，加密货币与股票一起下跌。以太坊创始人 Vitalik 说，“那些深入研究加密货币的人，尤其是建造东西的人，很多人都欢迎熊市”。因为这种下滑可以清理掉不太可行的项目。他认为，价格下跌将好奇的人与严肃的人分开。这就是为什么“加密货币的冬天” —— 当价格不断崩溃并在很长一段时间内无法恢复 —— 可以被视为一个积极的因素，你可以看到哪些项目实际上是长期可持续的。但是，另外一方面，一些将毕生积蓄投入加密货币的人在下跌后承受了巨大的精神压力。老王点评：对于那些不喜欢加密货币的人，是不是也乐于见到这种局面？时隔五年后，FreeDOS 1.3 释出MS-DOS 的开源替代品 FreeDOS 正式发布了 1.3 版。其主要变化包括：新的命令行解释器 FreeCOM、新的内核、支持 FAT32，软盘版本使用了压缩减少了一半容量需求，再次支持网络，新的程序和游戏，软件包更新等等。最简安装需要 20MB、包括游戏和应用的完整安装需要 275MB。FreeDOS 项目发起于 1994 年，2006 年才发布了 1.0 正式版，2012 年发布了 1.1 版本，2016 年底发布了 1.2 版本。老王点评：虽然应用场景和受众很少，但这是一种选择的自由。Linux 内核中获取随机字节的函数的性能提升了 8450%操作系统内核中的随机数是很多基础功能的基石，因此人们一方面在改进其随机性，另外一方面也在不断改进其性能。在 Linux 5.17 中替换了 SHA1 算法改进了安全性和性能，而在 5.18 中还将继续改进。最令人兴奋的是，在新的改进中，获取随机字节的 getrandom() 调用的性能 提升了 8450%，即 85 倍多。这主要得益于“在每 CPU 密钥上使用更简单的快速密钥擦除流”。受此影响，最显著的收益将出现在高核心数的服务器上和台式机上。老王点评：或许你不理解其中的技术细节，那就一句话，快就是了。
为这个自由操作系统的新用户和老用户提供 15 种资源。在整个上世纪 80 年代和 90 年代，DOS 是桌面之王。世界各地的程序员不满足于 DOS 的专有版本，他们共同创建了一个名为 FreeDOS 的开源版本，该版本于 1994 年首次推出。FreeDOS 项目 在 2021 年及以后还在继续发展。我们发表了几篇关于 FreeDOS 的文章，以帮助新用户开始使用 FreeDOS 和学习新程序。以下是去年我们最受欢迎的几篇 FreeDOS 文章。初学 FreeDOS你是 FreeDOS 的新手吗？如果你想了解如何启动和运行 FreeDOS 的基本知识，请查看这些文章：开始使用 FreeDOS：它看起来像复古计算时代，但 FreeDOS 是一个现代的操作系统，你可以用它来完成事情。FreeDOS 如何启动：了解你的计算机是如何引导和启动 FreeDOS 的，从开机到命令行提示符。用纯文本配置 FreeDOS：学习如何用 fdconfig.sys 文件来配置 FreeDOS。如何用 CD 和 DIR 浏览 FreeDOS：只需掌握两个命令，DIR 和 CD，你就可以在命令行中浏览你的 FreeDOS 系统。在 FreeDOS 中设置和使用环境变量：环境变量在几乎所有的命令行环境中都有用，包括 FreeDOS。Linux 用户的 FreeDOS如果你已经熟悉了 Linux 的命令行，你可能想试试这些在 FreeDOS 上创造类似环境的命令和程序：给 Linux 爱好者的 FreeDOS 命令：如果你已经熟悉了 Linux 的命令行，可以试试这些命令来帮助你轻松进入 FreeDOS。在 FreeDOS 中像 Emacs 一样编辑文本：如果你已经熟悉了 GNU Emacs，你应该在 Freemacs 中感到很自在。在 Linux 和 FreeDOS 之间复制文件：学习如何在 FreeDOS 虚拟机和 Linux 桌面系统之间传输文件。如何在 FreeDOS 上归档文件：这是 FreeDOS 版本的 tar，在 DOS 上归档的标准方法是 Zip 和 Unzip。在 FreeDOS 上使用这个怀旧的文本编辑器：让人联想到 Linux ed(1)，当你想用老式的方法编辑文本时，Edlin 是一种乐趣。使用 FreeDOS当你启动进入 FreeDOS，你可以使用这些很棒的工具和应用来完成工作或安装其他软件：如何使用 FreeDOS 的文本编辑器：FreeDOS 提供了一个用户友好的文本编辑器，叫做 FreeDOS Edit。在 FreeDOS 上听音乐：Mplayer 是一个开源的媒体播放器，通常可以在 Linux、Windows、Mac 和 DOS 上找到。在 FreeDOS 上安装和删除软件包：了解如何使用 FDIMPLES，即 FreeDOS 包管理器，在你的 FreeDOS 系统上安装和删除软件包。为什么我喜欢用 GW-BASIC 在 FreeDOS 上编程：BASIC 是我进入计算机编程的起点。我已经很多年没有写过 BASIC 代码了，但我对 BASIC 和 GW-BASIC 永远怀有好感。用 Bywater BASIC 在 FreeDOS 上编程：在你的 FreeDOS 系统上安装 Bywater BASIC，并开始尝试使用 BASIC 编程。在其近 30 年的历程中，FreeDOS 一直试图成为一个现代 DOS。如果你想了解更多，你可以在 FreeDOS 简史 中阅读关于 FreeDOS 的起源和发展。另外，请看 Don Watkins 关于 FreeDOS 的采访：一个大学生是如何创立一个自由和开源的操作系统。如果你想尝试 FreeDOS，请下载 2021 年 12 月发布的 FreeDOS 1.3 RC5。这个版本有大量的新变化和改进，包括更新的内核和命令 shell，新的程序和游戏，更好的国际支持，以及网络支持。从 FreeDOS 网站下载 FreeDOS 1.3 RC5。via: https://opensource.com/article/22/1/try-freedos作者：Jim Hall 选题：lujun9972 译者：geekpi 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
编写你自己的简单程序来自动执行通常需要大量输入的任务的批处理文件，是一种极好的方法。在 Linux 上，创建 shell 脚本 来自动执行重复的任务是很常见的。类似地，在开源版的旧式 DOS 操作系统 FreeDOS 上，你可以创建一个包含数个 FreeDOS 命令的 批处理文件 。然后，你就可以运行你的批处理文件来按顺序执行每个命令。你可以使用一个 ASCII 文本编辑器来创建批处理文件，诸如 FeeDOS 的 Edit 应用程序。在你创建一个批处理文件后，你可以使用一个文件名称加上扩展名 .bat 来保存它。文件名称应该是唯一的。如果你使用 FreeDOS 的一个命令的名称作为你自己的文件名称，那么可能将会执行 FreeDOS 的命令，而不会是你的批处理文件。实际上，所有的内部的和外部的 FreeDOS 命令都可以在一个批处理文件中使用。在你创建一个批处理文件时，你其实就是在编写一个程序。FreeDOS 批处理文件可能没有结构化编程语言的功能，但是对于耗时短暂却重复乏味的任务来说，它是非常方便的。注释你的代码对于任何程序员来说，学习的第一个好习惯都应该是：在一个程序中放置注释来解释该代码正在做什么。这是一件非常容易完成的事情，但是你需要仔细，不要傻傻地让操作系统来执行你的注释。避免出现这种情况的方法是在一个注释行的开头处放置 REM（“remark” 的缩写） 。FreeDOS 忽略以 REM 开头的代码行。但是任何查看源文件代码（即你在你的批处理文件中所编写的文本）的人都可以读取你的注释并理解它在做什么。这也是一种临时性禁用一个命令而不需要删除它的一种方法。只需要打开你的批处理文件来进行编辑，在你想要禁用行的开头处放置 REM ，并保存它。在你想要重新启用这个命令时，只需要打开文件来进行编辑和移除 REM 。这种技巧有时被称为 “注释掉” 一个命令。开始设置在你开始编写你自己的批处理文件前，我建议在 FreeDOS 中创建一个临时目录。这将会为你提供一个处理批处理文件的安全空间，不会意外地删除、移动，或重命名重要的系统文件或目录。在 FreeDOS 上，你可以使用 MD 命令来 创建一个目录 ：C:\>MD TEMP C:\>CD TEMP C:\TEMP> FreeDOS 的 ECHO 命令会控制当你运行一个批处理文件时在屏幕上显示的东西。例如，这里是一个简单是单行批处理文件：ECHO Hello world 如果你创建这个文件并运行它，你将看到在屏幕上显示的句子。从命令行中完成这项操作的最快的方法是：使用 COPY 命令来从你的键盘中（CON）获取输入，并将其放置到文件 TEST1.BAT 之中。接下来，按下组合键 Ctrl+Z 来停止复制过程，按下你键盘上的 Return 或 Enter 按键来返回一个提示。在你的临时目录中尝试创建这个文件为 TEST1.BAT ，接下来运行它：C:\TEMP>COPY CON TEST1.BAT CON => TEST1.BAT ECHO Hello world ^Z C:\TEMP>TEST1 Hello world 当你想要显示一段文本时，这可能很有用。例如，在一个程序完成它的任务时，你可能会在你的屏幕上看到一条告诉你需要等待的消息，或者在一个网络环境中时，你可能会看到一条登录消息。如果你想要显示一个空行怎么办？你可能会认为 ECHO 命令本身就可以达到目的，但是单独一个 ECHO 命令只会询问 FreeDOS 来响应 ECHO 是打开还是关闭：C:\TEMP>ECHO ECHO is on 获取一个空白行的方法是在 ECHO后紧接着使用一个 +符号：C:\TEMP>ECHO+ C:\TEMP> 批处理文件变量变量是一个存储你需要你的批处理文件临时记住的信息的位置。这是编程的一个重要的功能，因为你不能总是知道你的批处理文件需要使用什么样的数据。这里有一个用于演示的简单示例。创建 TEST3.BAT ：@MD BACKUPS COPY %1 BACKUPS\%1 变量是使用百分比符号和随后的数字表示的，因此，这个批处理文件将在你的当前目录中创建一个 BACKUPS 子目录，然后将复制变量 %1 到 BACKUPS 文件夹之中。这个变量是什么？当你运行批处理文件时，变量由你决定：C:\TEMP>TEST3 TEMP1.BAT TEST1.BAT => BACKUPS\TEST1.BAT 你的批处理文件已经复制 TEST1.BAT 到一个名称为 BACKUPS 的子目录，因为在你运行批处理文件时，你标识这个文件为一个参数。你的批处理文件将把 %1 替换为 TEST1.BAT 。变量是按位置的。变量 %1 是你提供给命令的第一个参数，变量 %2 是第二个参数，以此类推。假设你创建一个批处理文件来列出一个目录的内容：DIR %1 尝试运行它：C:\TEMP>TEST4.BAT C:\HOME ARTICLES BIN CHEATSHEETS GAMES DND 这像预期一样的工作。但是下面这个却失败了：C:\TEMP>TEST4.BAT C:\HOME C:\DOCS ARTICLES BIN CHEATSHEETS GAMES DND 如果你尝试它，你将得到第一个参数（C:\HOME）的列表，而得不到第二个参数（C:\DOCS）的列表。这是因为你的批处理文件仅查找一个变量（%1），此外，DIR 命令也仅能获取一个目录。此外，当你运行一个批处理文件时，你也不需要为其具体指定扩展名 —— 除非你运气相当不好地为批处理文件选取了一个与 FreeDOS 外部命令或类似命令相同的名称。当 FreeDOS 执行命令时，它按下面的顺序执行：内部命令带有 *.COM 扩展名的外部命令带有 *.EXE 扩展名的外部命令批处理文件多个参数好的，选择重新编写 TEST4.BAT 文件来使一个命令可以获取两个参数，以便你可以看到这是如何工作的。首先，使用 EDIT 应用程序来创建一个简单的名称为 FILE1.TXT 的文本文件。在其中放置一段某种类型（例如，“Hello world”）的语句，并在你的 TEMP 工作目录中保存文件。接下来，使用 EDIT 来更改你的 TEST4.BAT 文件：COPY %1 %2 DIR 保存它，然后执行命令：C:\TEMP\>TEST4 FILE1.TXT FILE2.TXT 在运行你的批处理文件时，你会看一个你的 TEMP 目录的目录列表。在列出的文件之中，你有 FILE1.TXT 和 FILE2.TXT ，它们是由你的批处理文件所创建的。嵌套批处理文件批处理文件的另一个功能是能够 “嵌套” ，这意味着一个批处理文件可以在另外一个批处理文件中被调用和运行。为查看这是如何工作的，从一对简单的批处理文件开始：第一个文件被称为 NBATCH1.BAT ：@ECHO OFF ECHO Hello CALL NBATCH2.BAT ECHO world 第一行 （@ECHO OFF） 轻轻地告诉批处理文件在你运行它时仅显示命令 （而不是命令本身） 的输出。你可能会在前面的示例中注意到这里有很多关于批处理文件正在做什么的反馈；在这种情况下，你正在允许你的批处理文件仅显示结果。第二个批处理被称为 NBATCH2.BAT ：echo from FreeDOS 使用 EDIT 来创建这两个文件，并在你的 TEMP 子目录中保存它们。运行 NBATCH1.BAT 来查看会发生什么：C:\TEMP\>NBATCH1.BAT Hello from FreeDOS world 你的第二个批处理文件将在第一个批处理文件之中通过 CALL 命令来执行，它将提供在你 “Hello world” 信息中间的字符串 “from FreeDOS” 。FreeDOS 脚本编写你自己的简单程序来自动执行通常需要大量输入的任务的批处理文件，是一种极好的方法。你使用的 FreeDOS 越多, 你将越熟悉它的命令，在你熟知命令后，在一个批处理文件中列出它们仅是一件使你的 FreeDOS 系统让你生活轻松的事情。尝试一下！via: https://opensource.com/article/21/3/batch-files-freedos作者：Kevin O'Brien 选题：lujun9972 译者：[robsean]](https://github.com/robsean) 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
如果你已经熟悉了 Linux 命令行，尝试这些命令有助于轻松地进入 FreeDOS 。如果你已经尝试过 FreeDOS ，你可能已经被命令行所吓倒。DOS 命令可能稍微不同于你所使用的 Linux 命令行，因此，使用它的命令行上需要学习一些新的命令。但是对于 Linux 用户来说，它不是一种 “全新的” 体验。在 FreeDOS 中，除了 DOS 命令之外，我们还包含一些已经熟悉的标准的 Unix 命令。因此，如果你已经熟悉了 Linux 命令行，尝试这些命令有助于轻松地进入 FreeDOS ：在四周走走在 FreeDOS 文件系统中使用 cd 命令来 更改目录 。在 FreeDOS 上的用法在 Linux 上的用法基本相同。要更改到一个名称为 apps 的子目录，输入 cd apps 。要回到先前的目录，输入 cd .. 。在 FreeDOS 上导航浏览目录和路径是仅有的不同点，目录分隔符是 \（“反斜杠”）而不是你在 Linux 上使用的 / （“正斜杠”）。例如，让我们假设你在 \devel 目录之中，你想移动到 \fdos 目录。这两个目录相对于 根 目录而言是处于相同的 “层次” 之中的。因此，你可以输入 cd ..\fdos 来 “向后返回” 一个目录层次（使用 ..） ，然后再 “转到” fdos 目录。要更改到一个新的目录，你可以使用先前提到的反斜杠来替换需要给出的完整的路径。如果你已经深入了另外一个路径之中，并且只是像立即切换到新的位置，那么这会是非常方便的。例如，要更改到 \temp 目录，你可以输入 cd \temp 。C:\>cd apps C:\APPS>cd .. C:\>cd devel C:\DEVEL>cd ..\fdos C:\FDOS>cd \temp C:\TEMP>_ 在 FreeDOS 中，像大多数的 DOS 系统一样，你可以在DOS 提示符中看到你的当前路径。在 Linux 上，你的提示符可能类似于 $ 。在 FreeDOS 上，提示符会列出当前的驱动器及其当前的路径，接下来使用 > 作为提示符（看做 Linux 上的 $）。列出和显示文件在 Linux 上，列出当前目录中文件的标准命令是 ls 命令。在 FreeDOS ，它是一个不同的命令： dir 。但是你可以创建一个 别名 来获取一种与 ls 类似的行为。要为另外一个命令创建一个别名，使用内置的 alias 命令。例如，使用此命令来为 ls 定义一个别名，这个别名将显示一个目录列表，与在 Linux 上使用 ls 类似：C:\>alias ls=dir /one /w /b /l C:\>ls [apps] command.com [devel] fdauto.bat fdconfig.sys [fdos] kernel.sys [src] [temp] C:\> 在 FreeDOS 上的命令选项格式与 Linux 稍微不同。在 Linux 上， 你使用一个连字符号（-）表示选项。但是在 FreeDOS 上，你使用一个正斜杠来表示选项。上面的 alias 命令使用斜杆杠字符 — 它们是 dir 的选项。/one 可选择项告诉 dir 以某种方式排序（o）：先按名称（n）再按扩展名（e）来排序一些文件和目录。/w 使用一个 “宽” 目录列表，/b 使用一种不带有 dir 通常提供的其它信息的 “裸” 显示，/l 指示 dir 以小写字母的形式显示文件和目录。注意，针对于 FreeDOS 的 dir 命令的命令行选项与针对于 Linux 的 ls 命令的命令行选项截然不同，因此，你不能像你在 Linux 上一样精确地使用这个 ls 别名。例如，在 FreeDOS 上使用此别名输入 ls -l 将产生一条 “文件未找到” 的错误，因为底层的 FreeDOS 的 dir 命令不能找到一个名称为 -l 的文件。不过，对于基本的 “查看在我的系统上有哪些文件” 来说，这个 ls 别名已经足够帮助 Linux 用户开始使用 FreeDOS 了。类似地，你可以为 FreeDOS 的 type 命令创建一个别名，来像 Linux 的 cat 命令一样工作。两个重新都会显示一个文本文件的内容。虽然 type 不支持你可能在 Linux 下使用的命令行选项，但是显示一单个文件的基本用法是相同的。C:\FDOS>alias cat=type C:\FDOS>cat version.fdi PLATFORM=FreeDOS VERSION=1.3-RC4 RELEASE=2021-04-30 C:\FDOS> 其它的类 Unix 命令FreeDOS 包含一些精选的其它常见的类 Unix 命令，因此 Linux 用户将不会感觉到拘束。为在 FreeDOS 上使用这些 Linux 命令，你可能需要从 “FreeDOS Installer” - “My Package List Editor Software (FDIMPLES)” 软件包管理器来安装 “Unix Like Tools” 软件包。（Jim Hall, CC-BY SA 4.0）并不是所有的类 Unix 实用程序都能像在 Linux 上对应的实用程序一样 一致地 工作。这就是我们称其为 类 Unix 的原因。如果你将要使用一些深层次的命令行选项，你可能需要检查其兼容性，不过，对于典型的用法是没有问题的。开始在 FreeDOS 上使用这些类 Unix 命令：cal 命令是标准的 Unix 的日历程序。例如，为显示当前月份的日历，只需要输入 cal 。为查看一个具体指定的月份，将月份和年份作为参数予以给定：C:\>cal 6 1994 June 1994 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 使用 du 命令来查看你的磁盘使用情况。这是 Linux 的 du 命令的简单版本，并且不支持路径以外的任何命令行选项。C:\>du -s apps usage: du (start path) C:\>du apps 158784 C:\APPS\FED 0 C:\APPS Total from C:\APPS is 158784 C:\> head 命令显示一个文件的前几行。例如，这是一种确定一个文件是否包含正确数据的简单方法。C:>head fdauto.bat @ECHO OFF set DOSDIR=C"\FDOS set LANG=EN set TZ=UTC set PATH=%dosdir%\BIN if exist %dosdir%\LINKS\NUL set PATH=%path%;%dosdir%\LINKS set NLSPATH=%dosdir%\NLS set HELPPATH=%dosdir%\HELP set TEMP=%dosdir%\TEMP set TMP=%TEMP% C:\> 要查看一个完整的文件，使用 more 命令，在 FreeDOS 上的默认文件查看器。这将一次显示一屏的文件，然后在显示下一屏的信息前，打印一个按下一次按键的提示。more 命令是一个非常简单的文件查看器；在 Linux 上你可能已经使用过一个功能更全面的查看器，可以尝试一下 less 命令。less 命令提供 “向后” 滚动一个文件的能力，以防你错过一些东西。你还可以搜索具体指定的文本。C:\>less fdauto.bat @ECHO OFF set DOSDIR=C"\FDOS set LANG=EN set TZ=UTC set PATH=%dosdir%\BIN if exist %dosdir%\LINKS\NUL set PATH=%path%;%dosdir%\LINKS set NLSPATH=%dosdir%\NLS set HELPPATH=%dosdir%\HELP set TEMP=%dosdir%\TEMP set TMP=%TEMP% [...] 如果在你的程序路径变量（PATH）中有很多的目录，并且不确定某个程序是从哪里运行的，你可以使用 which 命令。这个命令将扫描程序路径变量，并且将打印出你正在查找的程序的完整的位置。C:\>which less less C:\>FDOS\BIN\LESS.EXE C:\>_ FreeDOS 1.3 RC4 包含其它的类 Unix 命令，你可能会在其它更特殊的情况下使用。这些命令包括：bc：任意精度数字处理语言sed：流编辑器grep 和 xgrep：使用正则表达式搜索一个文本文件md5sum：生成一个文件的一个 MD5 签名nro：简单排版，使用 nroff 宏sleep：暂停系统几秒钟tee：保存一个命令行流的副本touch：修改一个文件的时间戳trch：转换单个字符（像 Linux 的 tr 一样）uptime：报告你 FreeDOS 系统已经运行多长的时间在你控制下的 FreeDOSFreeDOS ，像 Linux 和 BSD 一样，是开源的。不管你是想通过学习一种新的命令行交互方式来挑战你自己，还是想再去熟悉令人舒适的类 Unix 工具，FreeDOS 都是一款有趣的值得尝鲜的操作系统。尝试一下！via: https://opensource.com/article/21/6/freedos-linux-users作者：Jim Hall 选题：lujun9972 译者：robsean 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
学习如何在 FreeDOS 中对目录和文件执行创建、移除、复制等任务。DOS 的开源实现 FreeDOS 提供了一个轻量级的操作系统，可以在现代硬件（或模拟器）上用于运行历史遗留下来的应用程序，可以更新硬件供应商不兼容于 Linux 的固件闪存。熟悉 FreeDOS 不仅是一种对旧计算机时代的有趣考古，也是一种获取有用的计算机技能的投入。在这篇文章中，我将介绍一些在 FreeDOS 系统上工作所需要知道的基本命令。基本的命令和文件命令FreeDOS 在硬盘驱动器上使用目录来组织文件。这意味着你需要使用目录命令来创建一个结构，用于存储和查找你在其中存储的文件。你所需要的用于管理目录结构的命令有：MD （或 MKDIR） 创建一个新的目录或子目录。RD （或 RMDIR） 移除（删除） 一个目录或子目录。CD （或 CHDIR） 从当前工作目录更改到另一个命令。DELTREE 删除一个目录，包括其包含的任意文件或子目录。DIR 列出当前工作目录的内容。因为使用目录是 FreeDOS 的主要工作，所有的这些命令（除 DELTREE 以外）是包含在 COMMAND.COM 中的内部命令。因此，它们将被加载到内存之中，并在你启动（即使是从启动盘启动）时随时可用。前三个命令有两个版本：一个版本是两个字母的短名，一个版本是长名。在实践中没有区别，因此，我将在这篇文章中使用短名。使用 MD 创建一个目录FreeDOS 的 MD 命令会创建一个新的目录或子目录。（实际上，由于 \ 是根目录，从技术上讲，所有的目录都是子目录，因此，我更喜欢在所有的示例中使用“子目录”的说法）。有一个可选的参数是你所想要创建目录的路径，但是如果不包含路径，将在当前工作子目录中创建子目录。例如，为在你的当前位置创建一个名称为 letters 的子目录：C:\HOME\>MD LETTERS 这会创建子目录 C:\letters 。通过包含一个路径，你可以在任意位置创建一个子目录：C:\>MD C:\HOME\LETTERS\LOVE 这和先移动到 C:\HOME\LETTERS ，然后在其中创建一个子目录的结果相同：C:\CD HOME\LETTERS C:\HOME\LETTERS\>MD LOVE C:\HOME\LETTERS\>DIR LOVE 一个路径描述不能超过 63 个字符，包括反斜杠在内。使用 RD 移除一个目录FreeDOS 的 RD 命令会移除一个子目录。这个子目录必须是空的。如果它包含文件或其它是子目录，你将会得到错误信息。它也有一个可选的路径参数，语法与 MD 的相同。你不能移除你的当前工作子目录。为移除此目录，你必须 CD 到其父目录，然后再移除不需要的子目录。使用 DELTREE 删除文件和目录RD 命令可能会让人有点迷糊，因为在该命令中内置了保护 FreeDOS 的措施。例如，你不能删除一个包含内容的子目录是一种安全措施。DELTREE 就是解决方案。DELTREE 命令会删除整个子目录“树”（子目录）、其包含的所有的文件，以及其包含的所有的子目录及其包含的所有的文件等等，上述的一切都在一个简单的命令中完成。有时，它可能有点 太 容易了，因为它可以如此快速地擦除数据。它是忽略文件属性的，因此你可以擦除隐藏、只读，和未知的系统文件。你甚至可以在命令中具体指定多个目录树来擦除它们。这条命令将在一个命令中擦除这两个目录中的所有子目录：C:\>DELTREE C:\FOO C:\BAR 这是那些使用前需要三思的命令中的其中一个。毫无疑问，它自然有其价值。我仍然对转到每个子目录，删除个别文件，检查每个子目录的内容，一次删除一个子目录, 然后再跳转到上一层目录，重复上述过程的乏味而记忆犹新。DELTREE 在你需要时是非常省时。但是我从不会将其用于日常维护，因为一此失误都能造成重大的损失。格式化一个硬盘驱动器FORMAT 命令也可以用于准备一个空白的硬盘驱动器来将文件写入其中。这将格式化 D: 驱动器：C:\>FORMAT D: 复制文件COPY 命令，顾名思义，将文件从一个位置复制到另一个位置。所需要的参数是：将要被复制的文件、要将其复制到的路径和文件。开关选项包含：/Y 当一个文件要被覆盖时，避免出现提示。/-Y 当一个文件要被覆盖时，需要出现提示。/V 验证副本的内容。这将从 C: 上的工作目录中复制文件 MYFILE.TXT 到 D: 驱动器的根目录，并将其重命名为 EXAMPLE.TXT ：C:\>COPY MYFILE.TXT D:\EXAMPLE.TXT 这将从 C: 上的工作目录中复制文件 EXAMPLE.TXT 到 C:\DOCS\ 目录，接下来验证文件的内容来确保副本是完整的：C:\>COPY EXAMPLE.TXT C:\DOCS\EXAMPLE.TXT /V 你也可以使用 COPY 命名来合并和追加文件。这个命令将合并两个文件 MYFILE1.TXT 和 MYFILE2.TXT ，并将其放置到一个新的名称为 MYFILE3.TXT 的文件之中：C:\>COPY MYFILE1.TXT+MYFILE2.TXT MYFILE3.TXT 使用 XCOPY 复制目录XCOPY 命令将复制整个目录以及它们的所有的子目录和这些子目录中包含的所有的文件。参数是将要复制的文件和其路径，以及将要复制到的目的地。重要的开关选项是：/S 复制当前目录及其子目录中的所有文件。/E 复制子目录，即使它们是空的。这个选项必须和 /S 一起使用。/V 验证其所制作的副本。这是一个非常强大和有用的命令，尤其是用于备份目录或整个硬盘驱动器。这个命令将复制目录 C:\DOCS 的全部内容，包括所有的子目录及其内容（除了空的子目录以外），并将其放置到驱动器 D: 的目录 D:\BACKUP\DOCS\ 之中：C:\>XCOPY C:\DOCS D:\BACKUP\DOCS\ /S 使用 FreeDOSFreeDOS 是一个有趣的、轻量的、开源的操作系统。不管你正在使用它来更新你的主板的固件，还是给予旧计算机新生，它都能提供很多有用的实用程序，可以使你能够很好地使用它工作。学习 FreeDOS 的基本知识。你都可能会被它的多才多艺所惊讶。via: https://opensource.com/article/21/4/freedos-commands作者：Kevin O'Brien 选题：lujun9972 译者：robsean 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
学习如何使用 FDCONFIG.SYS 来配置 FreeDOS 。FreeDOS 是主配置文件是在根目录中的名称为 FDCONFIG.SYS 的文件。这个文件包含一系列的行，每行都设置一个诸如 LASTDRIVE=Z 或 FILES=40 的值。例如，在 FreeDOS 1.3 RC4 中的默认 FDCONFIG.SYS ，看起来像这样：SET DOSDIR=C:\FDOS !COUNTRY=001,858,C:\FDOS\BIN\COUNTRY.SYS !LASTDRIVE=Z !BUFFERS=20 !FILES=40 !MENUCOLOR=7,0 MENUDEFAULT=1,5 MENU 1 - Load FreeDOS with JEMMEX, no EMS (most UMBs), max RAM free MENU 2 - Load FreeDOS with JEMM386 (Expanded Memory) MENU 3 - Load FreeDOS low with some drivers (Safe Mode) MENU 4 - Load FreeDOS without drivers (Emergency Mode) 12?DOS=HIGH 12?DOS=UMB 12?DOSDATA=UMB 1?DEVICE=C:\FDOS\BIN\JEMMEX.EXE NOEMS X=TEST I=TEST NOVME NOINVLPG 234?DEVICE=C:\FDOS\BIN\HIMEMX.EXE 2?DEVICE=C:\FDOS\BIN\JEMM386.EXE X=TEST I=TEST I=B000-B7FF NOVME NOINVLPG 34?SHELL=C:\FDOS\BIN\COMMAND.COM C:\FDOS\BIN /E:1024 /P=C:\FDAUTO.BAT 12?SHELLHIGH=C:\FDOS\BIN\COMMAND.COM C:\FDOS\BIN /E:1024 /P=C:\FDAUTO.BAT 但是，这些指令行都表示什么意思？为什么一些指令行有一个问号（?）或一个叹号（!），而其它的命令行却没有？一个简单的配置让我们从一个简单的配置开始，像这样，我们就可以看到我们的配置做了什么。做出这个非常简单的 FDCONFIG.SYS 文件：LASTDRIVE=Z BUFFERS=20 FILES=40 DEVICE=C:\FDOS\BIN\HIMEMX.EXE SHELL=C:\FDOS\BIN\COMMAND.COM C:\FDOS\BIN /E:1024 /P=C:\FDAUTO.BAT 这个配置文件仅包含几个指令：LASTDRIVE=ZBUFFERS=20FILES=40DEVICE=C:\FDOS\BIN\HIMEMX.EXESHELL=C:\FDOS\BIN\COMMAND.COM C:\FDOS\BIN /E:1024 /P=C:\FDAUTO.BAT第一行指令告诉 FreeDOS 在存储器中保留多少驱动器字母。（DOS 使用字母来表示附属于系统的每个驱动器，LASTDRIVE=Z 表示预留从 A 到 Z 的所有驱动器字母）。 LASTDRIVE 会影响系统可以识别的 逻辑驱动器 的数量。你可能没有任何的逻辑驱动器；FreeDOS 安装器不会默认设置这些逻辑驱动器。在任何情况下，在任何 FreeDOS 系统上设置 LASTDRIVE=Z 都是没有害处的。BUFFERS 行设置文件缓冲区预留存储器。缓冲区 有助于加速某些需要存储空间的进程，例如复制文件。如果你为 BUFFERS 设置一个较大的值，那么 FreeDOS 将预留更多的存储器。同理反之。大多数的用户将会设置其为 BUFFERS=20 或 BUFFERS=40 ，取决于他们在系统上读写文件的频率。FILES 设置决定 DOS 允许你一次打开多少文件。如果你运行的一个应用程序需要一次打开很多文件，例如打开一个谱系数据库，你可能需要为 FILES 设置一个较大的值。对于大多数的用户来说，FILES=40 是一个合理的值。DEVICE 是一个特殊的指令，用于加载 设备驱动器 。DOS 需要针对某些硬件或配置文件的设备驱动器。这行 DEVICE=C:\FDOS\BIN\HIMEMX.EXE 来加载 HimemX 设备驱动，这样，DOS 可以利用超出前 640 KB 的扩展存储器。最后的指令行告诉 FreeDOS 的内核在哪里找到命令行 shell 。默认情况下，内核将从 COMMAND.COM 开始查找 shell ，但是你可以使用 SHELL 指令来更改它。在这个示例中， SHELL=C:\FDOS\BIN\COMMAND.COM 说明 shell 是 COMMAND.COM 程序，位于 C 驱动器上的 \FDOS\BIN 目录之中。在 SHELL 结尾处的其它文件表示选项为 COMMAND.COM 的 shell 。FreeDOS 的 COMMAND.COM 支持一些启动选项来修改它的行为，包括：C:\FDOS\BIN：COMMAND.COM 程序的完整的路径/E:1024：环境（E）大小，以字节为单位。/E:1024 告诉 COMMAND.COM 来预留 1024 字节，或者说是 1 KB ，来存储它的环境变量。/P=C:\FDAUTO.BAT：/P 选项表示 shell 是一个永久性的（P）shell ，因此用户不能通过输入 EXIT 来退出 shell（附加文本 =C:\FDAUTO.BAT 告诉 COMMAND.COM 在启动时执行 C:\FDAUTO.BAT 文件，而不再执行默认的 AUTOEXEC.BAT 文件）通过这个简单的配置文件，你应该能够理解 FreeDOS 1.3 RC4 安装的 FDCONFIG.SYS 文件中的一些东西。启动菜单FreeDOS 支持一种有序的功能：在一个系统上使用多个配置文件，使用一个“启动菜单”来选择你想要的配置。FDCONFIG.SYS 文件包含一些定义菜单的行:!MENUCOLOR=7,0 MENUDEFAULT=1,5 MENU 1 - Load FreeDOS with JEMMEX, no EMS (most UMBs), max RAM free MENU 2 - Load FreeDOS with JEMM386 (Expanded Memory) MENU 3 - Load FreeDOS low with some drivers (Safe Mode) MENU 4 - Load FreeDOS without drivers (Emergency Mode) MENUCOLOR 指令定义启动菜单的文本颜色和背景颜色。这些值通常在 0 到 7 的范围之内, 并代表这些颜色：0 黑色1 蓝色2 绿色3 品蓝4 红色5 品红6 棕色7 白色因此，MENUCOLOR=7,0 的定义意味着显示一个黑色背景（0）白色文本（7）的菜单。如果你想使用一个蓝色背景白色文本，你可以将其定义为 MENUCOLOR=7,1 。在行头部的叹号（!）意味着：不管你选择哪个菜单，这个指令都将会执行。MENUDEFAULT=1,5 行告诉内核等待用户多长时间来选择启动菜单项，或者如果用户没有选择的话，使用那个默认菜单项。MENUDEFAULT=1,5 标示着系统将等待 5 秒钟；如果用户不在这段时间内尝试选择一个菜单的话，内核将选择启动菜单 “1” 。在其后的 MENU 行至不同启动菜单配置的标签。它们是按顺序排列的，因此，菜单项目 “1” 是第一个，接下来的 “2” 是第二个，以此类推。在 FDCONFIG.SYS 中的接下来的一行中，你将在一个问号（?）前看到一些数字。这标示“针对这几个数字的启动菜单项，使用这行命令”。例如，如果用户选择启动菜单项 “2”、“3” 或 “4” 的话，那么带有 234? 的这行命令才将加载 HimemX 设备驱动器。234?DEVICE=C:\FDOS\BIN\HIMEMX.EXE 这里有很多方法来使用 FDCONFIG.SYS 以配置你的 FreeDOS 系统。我们在这里只介绍基本的东西，最重用的方法是定义你的 FreeDOS 内核设置。更多的信息，探索 FreeDOS 帮助系统（在命令行中输入 HELP）来学习如何使用 FreeDOS 的 FDCONFIG.SYS 选项：SWITCHES：启动时处理过程行为REM 和 ;：注释（在 FDCONFIG.SYS 中将被忽略）MENUCOLOR：启动菜单文本颜色和背景颜色MENUDEFAULT：启动菜单默认值MENU：启动菜单选项ECHO 和 EECHO：显示信息BREAK：设置打开或关闭扩展的 Ctrl+C 检查BUFFERS 或 BUFFERSHIGH：分配多少磁盘缓冲区COUNTRY：设置国际化行为DOS：告诉 FreeDOS 内核如何将其自身加载到存储器之中DOSDATA：告诉 FreeDOS 加载内核到上位存储器之中FCBS：设置文件控制块（FCB）的数量KEYBUF：在存储器中重新指定键盘缓冲区FILES 或 FILESHIGH：一次可以打开多少个文件LASTDRIVE 或 LASTDRIVEHIGH：设置可以使用的最后一个驱动器字母NUMLOCK：设置打开或关闭键盘数字锁SHELL、SHELLHIGH 或 COMMAND：设置命令行 shellSTACKS 或 STACKSHIGH：添加堆栈以处理硬件中断SWITCHAR：重新定义命令行选项开关字符SCREEN：设置在屏幕上的行数VERSION：设置向程序报告的 DOS 版本IDLEHALT：激活节能功能，在某些系统上有用DEVICE 和 DEVICEHIGH：加载一个驱动程序到存储器之中INSTALL 和 INSTALLHIGH：加载一个 “存储器驻留”（TSR）程序SET：设置一个 DOS 环境变量以纯文本方式配置 FreeDOS像 Linux 和 BSD 一样，FreeDOS 配置以纯文本的方式进行。不需要特殊指定的编辑工具，因此，深入研究，看看哪些选项最适合你。它很简单，但是功能很强大！via: https://opensource.com/article/21/6/freedos-fdconfigsys作者：Jim Hall 选题：lujun9972 译者：robsean 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
熟悉 FreeDOS 软件包管理器 FDIMPLES 。在 Linux 上，你可能已经使用过 “软件包管理器” 来安装或移除软件包。例如，在 Debian Linux 上的默认软件包管理器是 deb 命令，在 Fedora Linux 上的默认软件包管理器是 dnf 命令。 但是你知道 FreeDOS 也有一个软件包管理器吗？安装软件包FreeDOS 1.3 RC4 发行版包含了很多极好的你可以使用的程序和应用程序。不过，我们不会默认安装其中的全部的程序 —— 我们不想过度地填充你的硬盘驱动器空间，尤其是在一个较老的系统上，可能仅有几百兆字节容量的硬盘驱动器。当你安装 FreeDOS 时，如果你选择 “Plain DOS system” 选项，你将发现你的 FreeDOS 系统是非常小的（大约 20 MB 大小）。不过，要安装新的软件包很容易。在命令行中运行 FDIMPLES 程序。因为 DOS 是 不区分大小写 的，所以，你可以使用大写字母或小写字母来输入这个命令： fdimples 。（fdimples 与 FDIMPLES 或 FDImples 等同）在 FreeDOS 1.3 RC4 上的 FDIMPLES 软件包管理器（运行在 QEMU 之中）（Jim Hall, CC-BY SA 4.0）FDIMPLES 是 "FreeDOS Installer - My Package List Editor Software" 的首字母缩略词，是一个交互式软件包管理器。FDIMPLES 读取安装介质来识别可以安装或移除的软件包。如果你看到一个不同的菜单，它显示 “Installed!” ，但是，不让你安装其它的软件的话，请检查你系统中是否有 FreeDOS 的 CD-ROM 的安装介质。在物理机器上，你将需要将 CD-ROM 插入 CD-ROM 驱动器；在诸如 QEMU 或 VirtualBox 之类的虚拟机器上，你需要将安装 FreeDOS 的 CD-ROM 的安装介质与虚拟机器关联在一起。如果你仅看到一条 “Installed!” 的信息，检查 CD-ROM 是否已经加载（Jim Hall, CC-BY SA 4.0）让我们假设你想安装一些可以让你听音乐文件或其它声音文件的软件。使用向上箭头和向下箭头按键来导航到菜单中的 声音工具 项。这是一个针对声音和音乐程序的 软件包组 。在 FDIMPLES 中突出显示声音软件包组（Jim Hall, CC-BY SA 4.0）要选择这个组中的所有软件包，在你的键盘上按下空格键。如果你决定安装这个组中的某个软件包，按下 Tab 按键来移动到 软件包列表 方框面板，接下来使用空格键来选择每个软件包。通过按下空格键来选择一个组中的所有的软件包（Jim Hall, CC-BY SA 4.0）你可以继续选择你想要安装的其它的软件包或软件包组。当你选择好一切的东西后，使用 “Tab” 按键来高亮显示 “OK” 按键，并按下空格键按键。当你准备好安装时，突出显示 “Ok” 按钮（Jim Hall, CC-BY SA 4.0）FDIMPLES 接下来会安装你所选择的所有的软件包。如果你仅选择几个小型的软件包，这可能只需要花费片刻的时间，或者，如果你要求安装很多大型的软件包，它可能会花费数分钟的时间。当 FDIMPLES 安装每个软件包时，FDIMPLES 会输出安装状态。在安装完后，FDIMPLES 退出到命令行之中，以便你可以回去继续工作。当 FDIMPLES 安装软件包时，FDIMPLES 会显示安装过程，并在完成安装后自动地退出（Jim Hall, CC-BY SA 4.0）移除软件包如果你安装了一个软件包，但是后来发现你不想要它了怎么办？在 FDIMPLES 中移除软件包也同样容易。就像安装软件包一样，启动 FDIMPLES ，使用箭头键导航到包含你想要移除的软件包的组。例如，如果我想卸载一些我先前安装的音乐播放器软件包，我将导航到 “Sound Tools” 软件包组。导航到你想要移除的软件包组（Jim Hall, CC-BY SA 4.0）为一次移除整个软件包组，你可以在你想要移除的软件包组上按下空格键来取消选择它们。但是，在这里让我们假设我只是想移除几个我不需要的软件包，像音频 CD 播放器 “CDP”。（我没有任何的真实的音乐 CD 光盘）。为移除 CDP ，敲击 Tab 按键来移动到软件包列表方框面板，接下来使用空格键来取消选择 CDP 软件包。这会在该软件包上移除 “X” 标志。取消选择一个软件包来移除它（Jim Hall, CC-BY SA 4.0）你可以继续取消选择你想要移除的其它的软件包或软件包组。当你选择一切的东西后，使用 Tab 按键来突出显示 “OK” 按钮，并按下空格键按键。FDIMPLES 将移除你取消选择的软件包，然后自动地返回到命令行之中。FDIMPLES 移除软件包，然后返回到命令行之中（Jim Hall, CC-BY SA 4.0）在 FreeDOS 中。我们包含很多的软件包，遍及各种各样的软件包组。使用 FDIMPLES 来安装你需要的软件。请随意实验！如果你决定你不想要保留一个软件包了，你可以移除它，并为其它的软件包来释放所占用的磁盘空间。via: https://opensource.com/article/21/6/freedos-package-manager作者：Jim Hall 选题：lujun9972 译者：robsean 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出