C:\>cd \tempコマンドプロンプトにおいて実行形式のファイルを実行する時には、
C:\temp>dir
ドライブ C のボリューム ラベルは DISK-1-1 です
ボリューム シリアル番号は 7777-7777 です
C:\temp のディレクトリ
2008/05/27 23:55 <DIR> .
2008/05/27 23:55 <DIR> ..
2008/05/27 23:55 125 test1.bat
2008/05/27 23:55 125 test1.com
2008/05/27 23:55 125 test1.cmd
2008/05/27 23:55 125 test1.exe
1 個のファイル 500 バイト
2 個のディレクトリ 4,622,020,608 バイトの空き領域
C:\temp>
C:\temp>test1.exeと拡張子まで指定する場合と、
C:\temp>test1と拡張子を省略して指定する場合があります。実行するファイル名を拡張子まで指定する場合は問題無いと思います。しかし、上記のようにファイル名は全て同じ「test1」でありながら拡張子がそれぞれ違う場合、
C:\temp>test1と指定したらどの実行ファイルが実行されると思いますか? 実は実行形式のファイルは拡張子によって実行順位が決められております。この拡張子による実行順位は環境変数「PATHEXT」によって設定されております。
C:\temp>set pathextありました。これを見ると、拡張子による実行順位は「.com」が最優先で実行されるようになっております。ですから、
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
C:\temp>
C:\temp>test1と指定すると、数ある同名の実行ファイルの中から拡張子が「.com」である「test1.com」が実行されます。もし「test1.com」が存在しなければ「test1.exe」、「test1.exe」が無ければ「test1.bat」、「test1.bat」が無ければ「test1.cmd」が実行されるようになっております。
C:\temp>set pathextでもこれは一時的な変更ですので、恒久的な変更は「スタートボタン」→「設定」→「コントロールパネル」→「システム」→「詳細タブ」→「環境変数」にて行いましょう。
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
C:\temp>set pathext=.BAT;.CMD;.EXE;.COM;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
C:\temp>set pathext
PATHEXT=.BAT;.CMD;.EXE;.COM;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
C:\temp>
Author:公爵
現在公妃を募集中!
連絡先は以下の通り。
duke_of_southisland@s7.dion.ne.jp
| 日 | 月 | 火 | 水 | 木 | 金 | 土 |
|---|---|---|---|---|---|---|
| - | 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 | - | - | - | - |