Where is where.exe ?
unix の which に相当するのは、Windows では whrere.exe です。
MS 純正の where.exe は、以下からダウンロードできます。
ftp://ftp.microsoft.com/reskit/y2kfix/x86/where.exe
which をバッチファイルで代替すると、
which.cmd ベース名.拡張子
@if exist "%~$PATH:1" echo;"%~$PATH:1"
この場合は、拡張子が省略できません。
拡張子を省略可にしたければ、環境変数のPATHEXTを使って、拡張子を補います。
which.cmd ベース名
@for %%1 in (%*) do @for %%2 in (.;%PATHEXT%) do @for %%3 in ("%%~1%%2") do @if exist "%%~$PATH:3" echo;"%%~$PATH:3"
GUIでは、
「新規作成」「ショートカット」
で、ベース名を与えれば、PATHで解決してくれます。
作成したショートカットのプロパティでリンク先を見ます。
WSHでも、同じ原理が利用できます。
which.vbs ベース名
Set wShell=CreateObject("WScript.Shell")
Set Link=wShell.CreateShortcut("hoge.lnk")
On Error Resume Next
Link.TargetPath=WScript.Arguments.Item(0)
On Error GoTo 0
WScript.Echo Link.TargetPath
« 「Windows 画像と Fax ビューア」でファイルを表示または印刷するショートカット | トップページ | コマンドラインで、フォルダとファイルを判別する。(その2) »