MS-DOSより特定のコマンドが入力された場合に
指定したexeにパラメータを渡して起動させる
にはどういった方法があるでしょうか?

A 回答 (6件)

もしかしてDOSKEYだけで対応できるのかこの質問??


例えばLS abcとコマンドラインを入力するとdir abcを実行したいとかそういう話ですか?
下記のように設定AUTOEXEC.BATに設定しておけば
doskey del=del /p $*
doskey telnet=c:\tools\vt\Ttermpro.exe $*
doskey h=doskey /history
良いだけでは??
例なら
del ファイル名
では実際は
del /p ファイル名
と実行したり
h
とすれば
doskey /history
と実行したりする機能ですね。
    • good
    • 0

>exe名ではなく他のキーワードで


>実行したいなと思ってまして
>a.exeにパラメータを設定して実行したい場合
> C:\>b パラメータ
>といった形で実行させるには
>どうしたらよいでしょうか?

単に*.exeとは違う名前で実行したいというのであれば、以下のようになります。

---------------------------------------------------------------------
"C:\Program Files\A\A.exe /V /C" を "B"最初からパラメータは固定して起動したいとき。
ノートパッド(DOSのEDITでも可)で、

C:
CD C:\Progra~1 ←DOSでは8文字以上のファイル名が扱えないため
A.exe /V /C

と書き込んで適当なところに"B.BAT"と名前を変更して保存します。

---------------------------------------------------------------------
"C:\Program Files\A\A.exe /V /C" を "B /V /C"でパラメータを指定して起動したいとき。
ノートパッドで、

C:
CD C:\Progra~1
A.exe %1 %2      ←%1,%2が第1、第2パラメーターを指します。

と書き込んで...以下同文。


ちなみに、"B.BAT"があるディレクトリ(フォルダ)にパスを通しておけば、どのディレクトリにいても起動できますが、できればパスの通っているディレクトリに作っておくと手間がかかりません。パスが通っているところを調べたいときは、プロンプトが表示されている状態で、"PATH"と打ち込んでリターンキーを押すとパスの通っているディレクトリーが判ります。

PATH=C:\WINDOWS;C:\WINDOWS\COMMAND

とあったら、"C:\WINDOWS"と"C:\WINDOWS\COMMAND"にパスが通っていることになります。";"は区切りとして使われます。
 
    • good
    • 0

まず、MS-DOSのcommand.comのコマンドラインの文法は、


<コマンド名> <parameter1> <parameter2> ....
となっています(コマンド名:内部コマンドと外部コマンドはBAT,COM,EXEファイル)。これを変えることは*出来ません*
なお、Windows95よりcommand.comには"start"という内部コマンドが追加になっています。
これは、
start filename.XXX
と入力すると、拡張子XXXに関連づけされているソフトを起動できるというものです。

よってそのままではご質問のような機能は実現できません。
なにがしかのプログラム経由で、
1)入力機能
2)入力されたものを解釈し、command.com又はMSDOSにプログラム起動などの指示を出す
を行う必要があります。
プログラムの候補としては、簡単なものならばBATファイルでも可能ですが、複雑になるとDOSプログラムをC言語などで作る必要があります。
内容によってはcommand.comの機能を拡張するソフト(KSH等)も可能性があります。

これ以上は具体的なパラメータとその判定基準、パラメータ数など細かなことがわからないとどれが適当であるかはわかりません。

では。
    • good
    • 0

MS-DOSのプログラムなども作っていましたが、10年近くにもなりますから、勘違いもあるかもしれません。



例えば、2数の和を求めるプログラム wa.exe で、2と3の和を求める時は、
wa 2 3
の様に、waの後ろに、スペースを入れて、書きEnterキーで実行できます。
拡張子のexeは書かなくて良いです。
コマンドの後ろに、/とかーを付けるのは、スイッチです。引数ではありません。
例えば、
wa /h
と入力すると、wa.exeコマンドの使い方を表示する。
というように、作成されています。
以上。
    • good
    • 0

ここが判りません。



>MS-DOSより特定のコマンドが入力された場合に
DOS上で稼動しているプログラムがですか?手動で入力してですか?それともDOSからWindowsプログラムを起動するということですか?

手動なり何なりパラメータを渡して起動させるならば『バッチファイル』を使うのが一般的ではないでしょうか。

この回答への補足

回答ありがとうございます。
説明が曖昧で申し訳ありません。

イメージとしては手動でキーワードとパラメータが
入力された際にそれを判断して特定のexeに対して
指定されたパラメータを設定して起動をかけたい
と思っています。

バッチファイルの使い方がよくわからないので
教えていただけると幸いです。

補足日時:2001/10/19 09:40
    • good
    • 0

コマンドラインから >何とか.exe /パラメータ の形式になります。

この回答への補足

 早速の回答ありがとうございます。
質問の仕方が悪かったみたいで
申し訳ありません。

 自分のイメージとしては
exe名ではなく他のキーワードで
実行したいなと思ってまして

a.exeにパラメータを設定して実行したい場合
 
 C:\>b パラメータ

といった形で実行させるには
どうしたらよいでしょうか?

 

補足日時:2001/10/19 09:36
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報