实际上,我想复制快捷方式文件并需要更改目标。
对于复印件,我有以下纸条
xcopy /Y "C:\Users\Administrator\Desktop\SFR.lnk" "C:\Users\Administrator\Desktop\SFR-NEW.lnk"*
目标是
当前:“ C:\ Users \ Administrator \ AppData \ Local \ SFR \ sfr.exe”。
在这里我想在复印后更改目标,我尝试了一些操作,但是不起作用。
xcopy /Y "C:\Users\Administrator\Desktop\SFR.lnk" "C:\Users\799964\Desktop\SFR-NEW.lnk"*
ChangeLNKs /p=C:\Users\Administrator\AppData\Local\SFR\sfr.exe -admin
复制快捷方式后,我只需要蝙蝠脚本即可更改目标。
答案 0 :(得分:1)
从提供的代码中可以看出,您根本不需要编辑目标。您仅需添加一个参数,因此添加一个参数会更明智。
您已经被告知其他语言可以满足您的需求,但是为了保持话题性,我提供了两个完整的批处理文件来利用它们。
使用powershell的人:
@FindStr /V "^@" "%~f0"|PowerShell -&GoTo :EOF
$SrcePath = 'C:\Users\Administrator\Desktop\SFR.lnk'
$DestPath = 'C:\Users\799964\Desktop\SFR-NEW.lnk'
Copy-Item $SrcePath $DestPath
$Shortcut = (New-Object -COM WScript.Shell).CreateShortcut($DestPath)
$Shortcut.Arguments = '-admin'
$Shortcut.Save()
还有一个使用vbscript:
::'@CScript //NoLogo //E:VBScript "%~f0"&Exit /B
SrcePath = "C:\Users\Administrator\Desktop\SFR.lnk"
DestPath = "C:\Users\799964\Desktop\SFR-NEW.lnk"
CreateObject("Scripting.FileSystemObject").CopyFile SrcePath,DestPath
Set Shortcut = WScript.CreateObject("WScript.Shell").CreateShortcut(DestPath)
Shortcut.Arguments = "-admin"
Shortcut.Save
Set Shortcut = Nothing
在此示例中,有一个不可见的第三个字符 SUB ,(0x1A),应该可以很好地复制,但值得一提。
选择一个或另一个,就速度而言,我可能会选择后者。