简体   繁体   中英

Change a shortcut's target from command prompt

I'm normally a Linux guy, but I need to write a batch script on Windows to change the target of some shortcuts. Is there a command to do that?

I doubt there is a way to do it with a batch script. It's doable in VBScript, though.

Set sh = CreateObject("WScript.Shell")
Set shortcut = sh.CreateShortcut("C:\Wherever\Shortcut.lnk")
shortcut.TargetPath = "C:\Wherever\Whatever.txt"
shortcut.Save

Save the script in a file ending in vbs and run it from the command line using cscript whatever.vbs .

(Don't be fooled by the name -- CreateShortcut is used to both create and modify shortcuts.)

There isn't a native program that comes with windows to achieve this. I scoured the internet for this same functionality awhile ago and stumbled upon the free software XXMKLINK .

With XXMKLINK, you can write a batch file for software installation which has been done by specialized instllation programs. Basically, XXMKLINK is to gather the information from a command line and package it into a shortcut.

Command syntax of XXMKLINK:

 xxmklink spath opath [ arg [ wdir [ desc [ mode [ icon[:n] ]]]]] where spath path of the shortcut (.lnk added as needed) opath path of the object represented by the shortcut arg argument string (use quotes with space, see below) wdir path of the working directory (for "Start in") desc description string (shown in Shosrtcut's Properties) mode display mode (1:Normal [default], 3:Maximized, 7:Minimized) icon[:n] icon file [with optional icon index value n] In addition to the above, the following switches are supported which can be placed in any position in the command line. /p prompts before action /q no output when successful (quiet) /e checks error condition strictly 

The downside is you'll need to copy the xxmklink exe onto each computer with the batch script.

A link to download it is available at the bottom of the linked page.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM