(view source code of shortcut.bat as plain text)
@ECHO OFF
:: Check OS versionIF NOT "%OS%"=="Windows_NT" GOTO Syntax
:: Keep variables localSETLOCAL
:: Check command line parametersIF "%~1"=="" GOTO Syntax
IF NOT EXIST "%~1" GOTO Syntax
:: Check if multiple files were specifiedFOR /F %%A IN ('DIR /A-D/B/ON/P/-P "%~1" ^| FIND /C "."') DO SET NUMFILES=%%A
IF "%NUMFILES%"=="1" GOTO ExtCheck
FOR %%A IN ("%~1") DO CALL %0 "%%~A"
GOTO End
:ExtCheck:: If a single file is specified, the extension should be ".LNK"IF /I NOT "%~x1"==".LNK" GOTO Syntax
:: Find the shortcut's pathFOR /F "tokens=*" %%A IN ('TYPE "%~1" ^| FIND "\"') DO CALL :Parse "%%~A"
ECHO.
IF "%LINKPATH%"=="" GOTO DispUNC
ECHO Fully qualified path of "%~nx1":
ECHO. %LINKPATH%
ECHO.
:DispUNCIF "%LINKUNC%"=="" GOTO DispNone
ECHO UNC of "%~nx1":
ECHO. %LINKUNC%
ECHO.
:DispNoneIF NOT "%LINKUNC%"=="" GOTO End
IF NOT "%LINKPATH%"=="" GOTO End
ECHO No path found!
ECHO.
GOTO End
:ParseSET LINE=%~1
:: Remove leading space introduced by previous line (NT 4 only)VER | FIND "Windows NT" >NUL
IF NOT ERRORLEVEL 1 IF NOT "%LINE%"=="" SET LINE=%LINE:~1%
:: Skip this line if emptyIF "%LINE%"=="" GOTO:EOF
:: Skip lines beginning with "#"IF "%LINE:~0,1%"=="#" GOTO:EOF
:: Store UNC of shareIF "%LINE:~0,2%"=="\\" (SET LINKUNC=%LINE%&GOTO:EOF)
:: Store driveIF "%LINE:~1,2%"==":\" (SET LINKPATH=%LINE%&GOTO:EOF)
:: Skip this line if it starts with "\"IF "%LINE:~0,1%"=="\" GOTO:EOF
:: Add relative path to UNC and to drive letterIF NOT "%LINKPATH%"=="" SET LINKPATH=%LINKPATH%%LINE%
IF NOT "%LINKUNC%"=="" SET LINKUNC=%LINKUNC%\%LINE%
GOTO:EOF
:SyntaxECHO.
ECHO SHORTCUT.BAT, Version 2.10 for Windows NT 4 and later
IF "%OS%"=="Windows_NT" ECHO Shows the fully qualified ^(UNC^) path the specified shortcut file points to.
IF NOT "%OS%"=="Windows_NT" ECHO Shows the fully qualified (UNC) path the specified shortcut file points to.
ECHO.
ECHO Usage: SHORTCUT shortcut_filespec
ECHO.
ECHO Wildcards are allowed in the shortcut filespec.
ECHO Use double quotes if the shortcut filespec contains spaces or ampersands.
ECHO.
ECHO Written by Rob van der Woude
ECHO http://www.robvanderwoude.com
:EndIF "%OS%"=="Windows_NT" ENDLOCAL
page last modified: 2025-10-11; loaded in 0.0071 seconds