為 Linux 用戶準(zhǔn)備的 FreeDOS 命令
如果你已經(jīng)嘗試過 FreeDOS ,你可能已經(jīng)被命令行所嚇倒。DOS 命令可能稍微不同于你所使用的 Linux 命令行,因此,使用它的命令行上需要學(xué)習(xí)一些新的命令。
但是對于 Linux 用戶來說,它不是一種 “全新的” 體驗。在 FreeDOS 中,除了 DOS 命令之外,我們還包含一些已經(jīng)熟悉的標(biāo)準(zhǔn)的 Unix 命令。因此,如果你已經(jīng)熟悉了 Linux 命令行,嘗試這些命令有助于輕松地進入 FreeDOS :
在四周走走
在 FreeDOS 文件系統(tǒng)中使用 cd 命令來 更改目錄 。在 FreeDOS 上的用法在 Linux 上的用法基本相同。要更改到一個名稱為 apps 的子目錄,輸入 cd apps 。要回到先前的目錄,輸入 cd .. 。
在 FreeDOS 上導(dǎo)航瀏覽目錄和路徑是僅有的不同點,目錄分隔符是 \(“反斜杠”)而不是你在 Linux 上使用的 / (“正斜杠”)。例如,讓我們假設(shè)你在 \devel 目錄之中,你想移動到 \fdos 目錄。這兩個目錄相對于 根 目錄而言是處于相同的 “層次” 之中的。因此,你可以輸入 cd ..\fdos 來 “向后返回” 一個目錄層次(使用 ..) ,然后再 “轉(zhuǎn)到” fdos 目錄。
要更改到一個新的目錄,你可以使用先前提到的反斜杠來替換需要給出的完整的路徑。如果你已經(jīng)深入了另外一個路徑之中,并且只是像立即切換到新的位置,那么這會是非常方便的。例如,要更改到 \temp 目錄,你可以輸入 cd \temp 。
- C:\>cd apps
- C:\APPS>cd ..
- C:\>cd devel
- C:\DEVEL>cd ..\fdos
- C:\FDOS>cd \temp
- C:\TEMP>_
在 FreeDOS 中,像大多數(shù)的 DOS 系統(tǒng)一樣,你可以在DOS 提示符中看到你的當(dāng)前路徑。在 Linux 上,你的提示符可能類似于 $ 。在 FreeDOS 上,提示符會列出當(dāng)前的驅(qū)動器及其當(dāng)前的路徑,接下來使用 > 作為提示符(看做 Linux 上的 $)。
列出和顯示文件
在 Linux 上,列出當(dāng)前目錄中文件的標(biāo)準(zhǔn)命令是 ls 命令。在 FreeDOS ,它是一個不同的命令: dir 。但是你可以創(chuàng)建一個 別名 來獲取一種與 ls 類似的行為。
要為另外一個命令創(chuàng)建一個別名,使用內(nèi)置的 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 將產(chǎn)生一條 “文件未找到” 的錯誤,因為底層的 FreeDOS 的 dir 命令不能找到一個名稱為 -l 的文件。不過,對于基本的 “查看在我的系統(tǒng)上有哪些文件” 來說,這個 ls 別名已經(jīng)足夠幫助 Linux 用戶開始使用 FreeDOS 了。
類似地,你可以為 FreeDOS 的 type 命令創(chuàng)建一個別名,來像 Linux 的 cat 命令一樣工作。兩個重新都會顯示一個文本文件的內(nèi)容。雖然 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 上對應(yīng)的實用程序一樣 一致地 工作。這就是我們稱其為 類 Unix 的原因。如果你將要使用一些深層次的命令行選項,你可能需要檢查其兼容性,不過,對于典型的用法是沒有問題的。開始在 FreeDOS 上使用這些類 Unix 命令:
cal 命令是標(biāo)準(zhǔn)的 Unix 的日歷程序。例如,為顯示當(dāng)前月份的日歷,只需要輸入 cal 。為查看一個具體指定的月份,將月份和年份作為參數(shù)予以給定:
- 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 命令顯示一個文件的前幾行。例如,這是一種確定一個文件是否包含正確數(shù)據(jù)的簡單方法。
- 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 上的默認(rèn)文件查看器。這將一次顯示一屏的文件,然后在顯示下一屏的信息前,打印一個按下一次按鍵的提示。more 命令是一個非常簡單的文件查看器;在 Linux 上你可能已經(jīng)使用過一個功能更全面的查看器,可以嘗試一下 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:任意精度數(shù)字處理語言
- sed:流編輯器
- grep 和 xgrep:使用正則表達(dá)式搜索一個文本文件
- md5sum:生成一個文件的一個 MD5 簽名
- nro:簡單排版,使用 nroff 宏
- sleep:暫停系統(tǒng)幾秒鐘
- tee:保存一個命令行流的副本
- touch:修改一個文件的時間戳
- trch:轉(zhuǎn)換單個字符(像 Linux 的 tr 一樣)
- uptime:報告你 FreeDOS 系統(tǒng)已經(jīng)運行多長的時間
在你控制下的 FreeDOS
FreeDOS ,像 Linux 和 BSD 一樣,是開源的。不管你是想通過學(xué)習(xí)一種新的命令行交互方式來挑戰(zhàn)你自己,還是想再去熟悉令人舒適的類 Unix 工具,F(xiàn)reeDOS 都是一款有趣的值得嘗鮮的操作系統(tǒng)。嘗試一下!