質問: dos/v ver6.xx のdirコマンド ms-dos/v ver6.xxのdirコマンドで教えてください。 オプションなしで、ただ単に dir のコマンドを打った場合、出力される順番はどういった順番になってるのでしょう? ファイル名のアルファベット順? 拡張子のアルファベット順? タイムスタンプ順? 3000個のファイルを持つディレクトリで dir > list.txt でリダイレクトしてみたところ、上記のいずれでもなかったのですが、dosはどういった順番で 出力してるのでしょう? よろしくお願いします。
回答: ついでに補足しておきますが、dos系のディスクには「ファイル管理領域」と言う場所があり、そこにファイル名などが格納されています。 dirコマンドはその管理領域に登録されている順にファイル情報を表示しているだけの筈です。 ファイルを削除して管理領域に空きが出来れば新しいファイル情報は空いた部分を使うので必ずしも「ファイルを作成した順」にはならないでしょう。 ファイルの削除と作成を長期間繰り返していれば表示順は何の意味もありません。 もともとms-dosというのはファイル操作をもの凄く単純にしたosなのでその辺は利用者がどうこうすることは出来ません。ms-dosではない他のosではファイルを作りたい場合にどのディスクのどのエントリーに必要な量のセクター/トラックを事前に割り当ててからアプリケーションで使用します。この作業を事前にやっておかないとアプリケーションを実行した時点で「file i/o error」となってアボートしてしまいます。 ※ここで言うms-dos以外のosとは、汎用機などに代表されるパソコン以外のコンピューターで使用されているosです。