概念的には似たようなものですが、基本的なOSの仕組みが違うので
その間には、大きな隔たりがあります。
まず、第一に重大な、致命的な違いがあります。
つまりWindowsでいうコマンドプロンプトとは
本来は、コマンドの入力を促す(事前のコマンドが終了したことを通知する)ために
コマンドラインインターフェイスの行頭に表示される文字列のことを指しています。
C:\>
と表示されたこれが本来のコマンドプロンプトです。
実際Windowsで言うコマンドプロンプトの本体はCMD.EXEなのですが
CMD.EXEのようなユーザーインターフェイスを、コマンドラインインターフェイスと呼びます。
GUIに対比してCUIという言葉がありますが、CUIはキャラクターユーザーインターフェイスで
文字だけによるUIを意味します。
ですから文字だけで作られたメニューはCUIでありCLIではありません。
Windows3.0への移行時の大きな障害は、そういったCUIメニューを提供する様々なソフトで
GUIの有用性を理解してもらうまでには、かなりの期間がかかりました。何しろ重すぎて。
こういったCLIを提供するソフトには、CMD.EXEのほかWindows PowerShellなどがありますし
UNIX系OSにおいては、何種類ものソフトが存在します。
MacOSXでは、標準ではTerminal.appですが、ターミナルは一般名詞で
UNIX系OSでは、ターミナルとコンソールという同じものを指す言葉が一般的です。
そして、その種類としてはgnome-terminal,konsole,xfce4-terminalなどなど何種類もあります。
ですが、その基本的なコマンドインタープリターとしての中身は
ほとんどの場合、shから進化しつづけて安定した位置にあるbashだったりします。
shやbashはコマンドシェルと呼ばれるもので
GUI時代のターミナルはコマンドシェルと、それを飾り、ウィンドウとして表示するターミナルソフトの
二重構造で実現されています。
そして、同じシェルで、同じコマンドを実行するのであれば
LinuxでもFreeBSDでもMacOSXでも基本同じように動作します。
そういう意味では、Windowsだけが違うということにもなります。
もともとMicrosoft社の最初のOSだったMS-DOSは
同社が無かった時代からあるUNIXを参考にした部分がありました。
ですから、MS-DOSからPC-UNIXへと移行した人にとって
UNIXのコマンドラインでの操作は、高度で強力でありつつ、すこし難しいものでした。
基本的には、COPYコマンドはcpコマンドを参考にしていますし
コピー先を指定する一つ上のディレクトリーを指定する../や相対指定の概念も
UNIXを参考としたものです。
ですが、mvコマンドに相当するRENコマンドはmvとは機能の違いが大きく
ifconfigとIPCONFIGはよく似た名前ですが、役割の違いも大きなものです。
実行パスとしてカレントディレクトリーを設定していることはMS-DOS系の大きな特徴で
UNIX系OSでは、カレントディレクトリーの実行ファイルでも
明示的に./を付けなければ実行できません。
UNIXでは早い段階で標準機能となったTABキーによるファイル名補完機能でも
実行ファイルを入力する過程では、カレントディレクトリーにあっても
明示的に./を付けていなければ、補完の対象として出ません。
大文字と小文字を、あたりまえに区別することもUNIX系OSの特徴と言えますが
正確には、大文字と小文字を同一視することが基本のWindowsのほうが特殊です。
たとえば、foo.txtとFOO.txtが同じディレクトリーに存在できないのがWindowsで
UNIX系OSでは、区別され、同じディレクトリーに存在できるのが当たり前です。
MacOSXの場合はUNIXとしては区別していますが
MacOSXとしてのGUIからは、同一視するようになっているようです。
コマンドによる処理を前提にすれば、区別して使う習慣をつけるほうがいいでしょう。
インターネットの記事を見ていれば、MacOSXやLinuxなどのUNIX系OSでは
MacPorts関連のコマンドや、YUM関連コマンド、APT関連コマンドのようなものがあります。
これらは、オープンソースソフトウェアを簡便に導入し管理するためのコマンド群ですが
Windows Storeを利用するためのコマンドが設けられたという話は聞いたことがありません。
FirefoxやGIMPやLibreOfficeのようなオープンソースソフトウェアを活用するようになると
UNIX系OSでは、コマンドでの管理が充実していることを、より強く感じるかもしれません。
もちろん、Windows Serverでもコマンドで管理が可能と言われるくらい
Windowsでもコマンドは拡充されています。
COMMAND.COMやCMD.EXEよりも大幅に強化された
Windows PowerShellもあります。
ですが、それは充分には認知されておらず
活用方法についての情報も、インターネット上に思ったほど無いように感じます。
概念自体を理解するという点においては、Windowsで勉強をはじめてもいいでしょう。
あるいは、余っているWindows搭載PCがあれば
それにFreeBSDを入れて使ってみてもいいでしょう。
これはWindows上の仮想マシンでやってもいいでしょう。
FreeBSDは由緒正しいBSDの系譜に連なるオープンソースソフトウェアのUNIXです。
MacOSXもUNIXであり、またUNIX系OSでもあります。
ですが、LinuxはUNIX系OSとは言えても、まったくUNIXではありません。
WindowsにもUNIX互換機能はありますが、それもUNIXではありません。
MacOSXのコマンドラインインターフェイスは、実質的にUNIXのそれですから
UNIXの勉強をするという意味では、LinuxよりFreeBSDのほうが混乱は少ないでしょう。
お礼
難しいですね^^; 頑張って勉強します。ありがとうございました。