如果您尝试过 FreeDOS,您可能会被命令行所困扰。DOS 命令与您可能使用的 Linux 命令行略有不同,因此在命令行中操作需要学习一些新命令。
但这对于 Linux 用户来说不必是“全新的”体验。除了已经与 Linux 类似的 DOS 命令之外,我们一直在 FreeDOS 中包含一些标准的 Unix 命令。因此,如果您已经熟悉 Linux 命令行,请尝试这些命令,以便轻松过渡到 FreeDOS
四处浏览
使用 cd
命令在 FreeDOS 文件系统中更改目录。用法在 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
别名。例如,在此别名上键入 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 安装程序 - 我的软件包列表编辑器软件 (FDIMPLES) 软件包管理器安装 类 Unix 工具 软件包。

图片来源: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磁盘使用命令的简单版本,除了路径外,不支持任何命令行选项。
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 系统已运行多长时间
FreeDOS,听候您的命令
FreeDOS 与 Linux 和 BSD 一样,是开源的。无论您是想通过学习一种新的命令行交互风格来挑战自己,还是想退回到熟悉的类 Unix 工具的舒适区,FreeDOS 都是一个有趣且新鲜的操作系统,值得探索。不妨试一试!
评论已关闭。