初心者のためのモバイルギア徹底活用講座

DOS版モバイルギアに関する掲示板
SPAM防止のため、(投稿パス)に moba555A を入力お願いします。

管理人:京kyoufacebookページtwitter


1 文太

command.comはどこ?

 MK32 を MS-DOS 化して使っております、Vzer の文太と申します。

 突然なのですが、 ご存じでしたらお教えいただきたいのですが、command.com
はどこにあるのでしょうか? DドライブとJドライブを探したのですが見つか
らないようなのです。いえ、別に在処がわかってどうという問題でもないですが、
ないわけないのに見つからないというのも情けないな、と思ったものですから質
問させていただいております。

 宜しくお願いいたします。

追伸:ここでは別にニュースではないと思いますが、先日、SanDiskのmicroSD、
512MBを導入しました。きちんと認識できているようです。安いですねぇ。
2 京kyou
文太さん
こんにちは京kyouです。

c:\ あたりはいかがでしょうか。
c:\command.com
があったと思いますよ(^^

# 最近のメディアは安くなりましたね。
# macbookAirのSSDが使いよいので
# 今後に期待してます。

京kyou
3 文太
京kyouさん、お教えありがとうございました。

> c:\ あたりはいかがでしょうか。

 間違いなくありました。Vzのファイラで見ているのに、Cだけ見落としてい
ました。autoexec.bat も config.sys もあるある。ただ ROM で書き換えられな
いんですよね。
 いえ、別に何も企んではいません。ただ、command.com の挙動(dir コマンド
でのワイルドカードの展開)がよく読めなかったので、version を確認したかっ
ただけなのです。
 ありがとうございました。m(__)m
4 Kohyan
あっちゅー間に解決しておられますが、蛇足なピンポイント反応。

> autoexec.bat も config.sys もあるある。ただ ROM で書き換えられな
いんですよね。
カードブートすれば書き放題ですよん(笑)

> version を確認したかっただけなのです。
コマンドプロンプトからver(enter)でも表示されます。
あるいはコマンドプロンプトでcommand(enter)でも…(^^;
5 京kyou
文太さん、目的は達成できたご様子でよかったですね。
Kohyanさん、いつもフォローありがとうございます。CARBですね。

■余談ですが、Teddy さんの diet を使う時

set tmp=d:\
set dietopt=-J
set dietoff=command.com;zcopy.com;lha.exe;ldf.exe

として、command.comを非対称にしておくことも注意点ですね。

ではまた!京kyou


京kyouです。
6 文太
Kohyanさん、初めまして。

> カードブートすれば書き放題ですよん(笑)
 分かってるのですが、どうも動こうとしません。そのうちに助けて
やってください。m(__)m

> > version を確認したかっただけなのです。
> コマンドプロンプトからver(enter)でも表示されます。
 MS-DOSのヴァージョンとcommand.comのヴァージョンって同じか(^^;ゞ

> あるいはコマンドプロンプトでcommand(enter)でも…(^^;
 ここが変なんですよ。お分かりでしたらお教え下さい。まず、verは出ます。
ということはpathにc:\が入っていなくても通じるってことですよね。verもdir
もcommand.com内の「内部コマンド」って奴ですよね。shellコマンドのせいで
すよ。
 そして、カードのAで、command /?とやると「bad command」。で、C:として
C:\>とプロンプトが変わったところでcommand /?とやると、英語の説明が出る。
これ、僕の理解のどこが間違ってるのでしょう? 「変な奴」とか洩らすしか
ないのですが…。

京kyouさん

> ■余談ですが、Teddy さんの diet を使う時
> set tmp=d:\
> set dietopt=-J
> set dietoff=command.com;zcopy.com;lha.exe;ldf.exe

 dietかぁ。知ってます。Dos3.3Dからのドス・ユーザですし、新宿紀伊国屋裏の
なんだっけ(?)なお店でまだ新品を売ってたころからのモバ・ユーザなのですが
dietだけは使ったことがありませんでした。20MBのATAフラッシュ(\12,000)な
時代でしたけど、そこまでしなかった。でも、いつはまって転ぶか分からないので
情報、多謝です。dietしてはいけない実行ファイルがあるのですね。φ(.. )メモメモ
7 Kohyan
半ばうろ覚えではありますが…

> MS-DOSのヴァージョンとcommand.comのヴァージョンって同じか(^^;ゞ

 普通は、そうです。
 わざと違うバージョンのcommand.comを用意して使うという手法が
あったはず。例えば起動は3.3cでやったんだけれど、5.0のcommand.comを
ちょっとだけ使いたいとか何とか…逆かも知れませんが、当時はそんな事に
手を出す余裕がなかったので習得せずじまいでした(^^;
再起動の時間を短縮する裏技でしたっけ?

#何だっけ?3.3cじゃダメで3.3dなら使えるとか…
#そんなアプリが、なかったっけか?(記憶の彼方

> pathにc:\が入っていなくても通じるってことですよね。
 通じるの意味が微妙ですが、起動完了時(コマンドプロンプト)には
メモリ内にcommand.comが読み込まれ、常駐しています。dirやver等の
内部コマンドは、そこからコマンドを実行しているので問題なく
動作します。

> shellコマンドのせいですよ。

 この文章の意図する所が判りませんm(_ _)m
ひとまず無かった事にして先に進みます(ヲィ

> カードのAで、command /?とやると「bad command」。
 このcommand.com /?という入力で、先に読み込まれているcommand.comの
子プロセスとしてA:\、もしくは環境変数pathの通っている場所に
存在するcommand.comを起動しようとしているわけで、A:\やpathの
通っている場所にcommand.comがなければ、bad command or filename
となるのは正常だと思いますよ。command.comではなく
他の外部コマンド(例えばxcopyなど)に置き換えて考えれば
整理しやすいと思います。

> C:\>とプロンプトが変わったところで
> command /?とやると、英語の説明が出る。

 これまでの流れをまとめてみると、環境変数:pathにC:\が含まれて
いない場合の挙動に見えます。C:\にはcommand.comが存在するけれど
A:\にはcommand.comがなく、path(enter)で表示される値にC:\がない
状態ではないですか?

*****************

 別でスレッドを立てた方が良いのかも知れませんが、ついでなので
環境変数について提言しちゃいます。

京kyouさん wrote:
> ■余談ですが、Teddy さんの diet を使う時
> set tmp=d:\
> set dietopt=-J
> set dietoff=command.com;zcopy.com;lha.exe;ldf.exe

 こういう場合、環境変数:tmpが他と競合していない事を確認した方が
良い場合があります。もし、他のアプリなどで
set tmp=c:\
と設定してあったにも関わらず、改めて
set tmp=d:\
とやってしまうと、環境変数:tmpにはd:\しか残らないからです。
追加してやりたい場合には
set tmp=c:\ ; %tmp%
としてやるか、一々その時点で入っていて欲しい環境変数:tmpの中身を
羅列するなどの方法がありますね。
前者で対応すると、環境変数領域が圧迫される危険性がある一方、
後者だと一々書かなきゃならんから面倒という欠点があります。
残念ながらROMからの通常起動の場合、C:\CONFIG.SYSで
SHELL=C:\COMMAND.COM /P
なんて書かれてますから、あまり沢山の環境変数を扱えないのが
実際の所ですね。環境変数:pathといくつかの環境変数を扱うのが
精一杯かも知れません。
8 文太
Kohyanさん、どうもご丁寧にありがとうございます。m(__)m

>> MS-DOSのヴァージョンとcommand.comのヴァージョンって同じか(^^;ゞ
> 普通は、そうです。
> わざと違うバージョンのcommand.comを用意して使うという手法が
 そんな裏技が…。って言葉が続かない…。

(dir, verに関して)
>> pathにc:\が入っていなくても通じるってことですよね。
> 通じるの意味が微妙ですが、起動完了時(コマンドプロンプト)には
>メモリ内にcommand.comが読み込まれ、常駐しています。
 了解、了解。常駐部分が呼ばれてるんだ、なるほど、なるほど。

>> shellコマンドのせいですよ。
> この文章の意図する所が判りませんm(_ _)m
>ひとまず無かった事にして先に進みます(ヲィ
 なかったことにしてやってください。「ですよね」のつもりでしたが…。
失礼しました。

>> カードのAで、command /?とやると「bad command」。
> このcommand.com /?という入力で、先に読み込まれているcommand.comの
>子プロセスとしてA:\、もしくは環境変数pathの通っている場所に
>存在するcommand.comを起動しようとしているわけで、
 完璧。氷解。「子プロセス」になるんだ。

> 他の外部コマンド(例えばxcopyなど)に置き換えて考えれば
> 整理しやすいと思います。
 こう考えればとても納得なお話。ありがとうございました。

 さすが、達人。m(__)m