Linux下: [adam@i ase adam]$ which ls /bin/ls [adam@i ase adam]$ which rm /bin/rm 在NT的Resource Kit中有一個where.exe,它也有相同的功效,不過Resource Kit是收費的,在這里我們可以作一個批處理文件來實現這個功能。
@echo off Rem 檢查命令行參數 if {%1}=={} goto :Usage for %%i i ({ {/ {-) do if {%1}==%%i?} goto :Usage %%i echo. :Rem 在當前目錄檢查看是否存在該文件 for %%i i (%1) do if exist %%~nx%i ( echo %%~Fi goto :EOF ) :Rem 在Path中檢查該文件 for %%i i (%1) do ( if exist %%~$PATH:i ( echo %%~$PATH:i ) else ( echo Error: %1 不在路徑里!!! goto :Usage ) ) goto :EOF :Usage echo. echo WHICH quot;filename" echo. echo 輸入文件明,返回該文件的全路徑! echo.
我們來對我們的程序作一個測試:
Microsoft Window 2000 [Versio 5.00.2195] (C) 版權所有 1985-1998 Microsoft Corp. C:\&;which WHICH quot;filename" 輸入文件明,返回該文件的全路徑! C:\&;which cmd.exe C:\WI T\system32\cmd.exe C:\&; OK,測試通過!