简体   繁体   English

从命令提示符更改快捷方式的目标

[英]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. 我通常是一个Linux人,但我需要在Windows上编写一个批处理脚本来改变一些快捷方式的目标。 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. 不过,这在VBScript中是可行的

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 . 将脚本保存在以vbs结尾的文件中,并使用cscript whatever.vbs从命令行运行它。

(Don't be fooled by the name -- CreateShortcut is used to both create and modify shortcuts.) (不要被名称所欺骗 - CreateShortcut用于创建和修改快捷方式。)

There isn't a native program that comes with windows to achieve this. 没有Windows的本机程序来实现这一目标。 I scoured the internet for this same functionality awhile ago and stumbled upon the free software XXMKLINK . 我不久前在互联网上搜索了同样的功能,并偶然发现了自由软件XXMKLINK

With XXMKLINK, you can write a batch file for software installation which has been done by specialized instllation programs. 使用XXMKLINK,您可以编写用于软件安装的批处理文件,该文件由专门的安装程序完成。 Basically, XXMKLINK is to gather the information from a command line and package it into a shortcut. 基本上,XXMKLINK是从命令行收集信息并将其打包成快捷方式。

Command syntax of XXMKLINK: 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. 缺点是您需要使用批处理脚本将xxmklink exe复制到每台计算机上。

A link to download it is available at the bottom of the linked page. 链接页面底部提供了下载链接。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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