意外に知らないstartコマンドの使い方
Unixのbash、zshと比較すると貧弱なコマンドプロンプト。
それでもまだ使用しなければならない場面は多々あるのだ。
そこで意外に知られてないのが、startコマンドでエクスプローラーを起動する方法
エクスプローラーをコマンドで起動
いや、単に僕が知らんかっただけだろうけど。
カレントディレクトリをエクスローラーで起動するときは最初は以下でやってた。
explorer /e, .\
面倒になってexpl.batというバッチを作った
@echo off if {%1}=={} goto PWD explorer /e,%1 %2 %3 %4 %5 %6 %7 %8 %9 goto END :PWD explorer /e, .\ :END
作ったときはexp.batにしていたのだけれど、Oracleのコマンドがバッティングするから、
expl.batに変更していた。
startコマンド
でもそんなことそをする必要がなかった。
startコマンドでできるのだ。
カレントディレクトリの場合
start .
相対で指定
start ..\
空白を含むパスの場合
start "" "C:\Documents and Settings\orangeclover"
仕様の罠
""を入れないと"C:\Documents and Settings\orangeclover"が
コマンドプロンプトのタイトルとして起動する。
たぶん、startコマンドでこれを最初にやったから、エクスプローラーは
起動できないのだと思ったのだろう。
バッチで何かを起動させる処理を作ると ""を入れないで
コマンドプロンプトが起動して、なんでだぁーと悩んでる人を
結構見かける
start "" コマンドと習慣付けた方がよさそうだ
しかし、なんで、こんな仕様なのだろうか。
START ["タイトル"] [/Dパス] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED] [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL] [/WAIT] [/B] [コマンド/プログラム] [パラメータ]
タイトルを設定するよりも、空白を含むパスを指定する方が圧倒的に多いと思う。
だって、Microsoftが空白Loveだから
C:\Documents and Settings
C:\Program Files
["タイトル"]よりも[/TITLE "タイトル"] の方が自然だと思うんだけどな。