找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 30380|回复: 8

[文本处理] 【已解决】怎么利用nircmd或Shortcut批量创建快捷方式呢?

[复制链接]
发表于 2009-4-3 21:33:40 | 显示全部楼层 |阅读模式
我提取了文件的  绝对路径+文件名
怎么样才能用nircmd.exe或Shortcut.exe批量创建快捷方式到指定文件夹了
我的电脑里有几百个文件需要创建快捷方式
手动编辑太麻烦了

nircmd.exe或Shortcut.exe下载地址:
http://www.vkill.net/tools.html

补充下载地址nircmd.exe 2.30 官方下载地址
http://www.nirsoft.net/utils/nircmd.zip
shortcut.exe 官方下载地址
http://www.optimumx.com/download/Shortcut.zip



tmp.txt
快捷注册表
批量重命名
灰色按钮客星
设备管理
飞鸽传书
高速拷贝

tmp1.txt
E:\Maxthon\tools\快捷注册表.exe
E:\Maxthon\tools\批量重命名.exe
E:\Maxthon\tools\灰色按钮客星.exe
E:\Maxthon\tools\设备管理.EXE
E:\Maxthon\tools\飞鸽传书.exe
E:\Maxthon\tools\高速拷贝.exe



shortcut [filename] [folder] [shortcut title] {arguments} {icon file} {icon resource number} {ShowCmd} {Start In Folder} {Hot Key} 创建文件的快捷方式
参数:


  • [filename]: 创建快捷方式的文件名
  • [folder]: 指定目标文件夹,并创建该有效文件夹的快捷方式,置于该文件夹下。可以使用特定变量来表示系统文件夹,如:~$folder.desktop$ ("桌面"文件夹), ~$folder.programs$ ("所有程序"文件夹), 等....
  • [shortcut title]: 快捷方式名称
  • {arguments}: 可选参数—用于执行文件名的额外辅助参数
  • {icon file}: 可选参数—用指定图标代替默认快捷方式图标显示
  • {icon resource number}: 可选参数—图标文件索引号(译者注:集成在SHELL32.dll中,索引号获取不同图标)
  • {ShowCmd}: 可选参数—用于需要最大化或最小化显示程序窗口。可以指定为最大化或最小化显示。
  • {Start In Folder}:可选参数—指定"开始"文件夹。如果未指定则自动以"所有程序"文件夹下文件名来填充。
  • {Hot Key}:可选参数—指定某快捷方式热键。如:Alt+Ctrl+A, Alt+Shift+F8, Alt+Ctrl+Shift+Y
例子:
shortcut "f:\winnt\system32\calc.exe" "~$folder.desktop$" "Windows Calculator" 1111111
shortcut "f:\winnt\system32\calc.exe" "~$folder.programs$\Calculators" "Windows Calculator"
shortcut "f:\Program Files\KaZaA\Kazaa.exe" "c:\temp\MyShortcuts" "Kazaa"
shortcut "f:\Program Files" "c:\temp\MyShortcuts" "rogram Files Folder" "" "f:\winnt\system32\shell32.dll" 45
shortcut "f:\Program Files" "c:\temp\MyShortcuts" "Program Files Folder" "" "" "" "max"






Shortcut    [版本 1.11]
创建,修改或者查询Windows对象链接 (快捷方式)                 

这个命令的语法是:            
Shortcut.exe /F:文件名称 /A:C|E|Q [/T:目标]   [/P:参数]    [/W:运行目录]     
  [/R:运行风格] [/I:图标,索引] [/H:快捷键] [/D:描述]        
/F:文件名称 : 指定 .LNK 快捷方式文件名称.      
/A:方式   : 定义它的使用方式 (C=建立, E=编辑 或 Q=查询).            
/T:目标   : 定义快捷方式所指向的目标路径和文件名称.                     
/P:参数       : 定义命令行参数到目标.                                    
/W:运行目录    : 定义目标起始工作目录.                                
/R:运行风格  : 定义运行的窗口状态 (1=常规, 3=最大化, 7=最小化).  
/I:图标,索引  : 定义图标和可选索引 (文件.exe 或 文件.exe,0).                 
/H:快捷键 : 定义快捷键, 键盘快捷键的一个数值.                           
/D:描述        : 为快捷方式定义描述(或备注) .                          
注意:
- 所有包含空格的自变量必须附上 "双引号".                                
- 如果指定为查询 (/A), 所有参数除 /F: 外全部忽略.                  
- 要查找快捷键数值,使用资源管理器来设置一个快捷键然后 /A:Q                    
- 要防止一个环境变量由存在扩展到快捷方式                                    
   运行, 使用 ^ 转义字符像这样: ^%WINDIR^%                           
例子:   
   /f:"%ALLUSERSPROFILE%\Start Menu\Programs\My App.lnk" /a:q
   /f:"%USERPROFILE%\Desktop\Notepad.lnk" /a:c /t:^%WINDIR^%\Notepad.exe /h:846
   /f:"%USERPROFILE%\Desktop\Notepad.lnk" /a:e /p:C:\Setup.log /r:3
由 /? 或 -? 参数显示这个语法和返回 1.                     
成功完成将返回 0.                    .

版权所有 2000-2005 Marty List, 汉化: fengdaolong

[ 本帖最后由 y169168712 于 2009-4-4 13:31 编辑 ]

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢主动给标题标注[已解决]字样

查看全部评分

发表于 2009-4-3 22:17:18 | 显示全部楼层
  1. @echo off
  2. for /f "delims=" %%a in (tmp1.txt) do (
  3.   nircmd shortcut "%%a" "~$folder.desktop$" "%%~na"
  4. )
复制代码
楼主提供的 nircmd.exe 和 shortcut.exe 的文件大小与官方网站的不同(大了十倍)......

评分

参与人数 1PB +2 收起 理由
y169168712 + 2 你帮我大忙了!谢谢

查看全部评分

 楼主| 发表于 2009-4-3 22:21:49 | 显示全部楼层
晕,中毒了。。。
我马上处理!
谢谢你提醒我!
发表于 2009-4-3 22:38:54 | 显示全部楼层
建议到官方网站下载
Google 搜索 nircmd.exeshortcut.exe,第一个搜索结果就是官方链接。
nircmd.exe 一直在更新的,现在 2.30 了...

[ 本帖最后由 tireless 于 2009-4-3 22:46 编辑 ]
发表于 2009-4-3 22:52:10 | 显示全部楼层
  1. @echo off
  2. for /f "delims=" %%a in (tmp1.txt) do (
  3.   shortcut.exe /f:"%%~na.lnk" /a:c /t:"%%a"
  4. )
复制代码
 楼主| 发表于 2009-4-3 22:53:59 | 显示全部楼层

补充下载地址

nircmd.exe 2.30 官方下载地址
http://www.nirsoft.net/utils/nircmd.zip
shortcut.exe 官方下载地址
http://www.optimumx.com/download/Shortcut.zip
发表于 2009-4-4 01:26:02 | 显示全部楼层
其实使用url的方法挻实用的:
(echo [InternetShortcut]
echo URL=File:///%cd%\!filename!
echo WorkingDirectory=%cd%
echo ShowCommand=
echo IconFile=%cd%\!filename!
echo IconIndex=^0
echo HotKey=)>"%desk%\!fileurl!"
发表于 2009-4-4 11:47:40 | 显示全部楼层

回复 7楼 的帖子

url和lnk还是有所区别,具体问题具体分析吧。
发表于 2009-4-5 11:08:57 | 显示全部楼层
用nircmd批量创建快捷方式很简单
新建一个记事本然后在记事本里把路径写下来就行了
我的配置
  1. shortcut "E:\软件\小软件\FirefoxPreloader\FirefoxPreloader.exe" "~$folder.desktop$" "Firefox"
  2. shortcut "E:\软件\TheWorld 2.0\Firefox.exe" "~$folder.desktop$" "TheWorld"
  3. shortcut "E:\软件\TheWorld 2.0\Firefox.exe" "C:\Documents and Settings\Administrator\Application Data\Microsoft\Internet Explorer\Quick Launch" "TheWorld 2.2"
  4. shortcut "D:\QQcx\Trayconizer.exe" "~$folder.desktop$" "Client" "E:\临时\红蜻蜓远程控制\Client.exe" "E:\游戏\世界之窗\TheWorld 2.0\ImgCache\1.ico"
复制代码

会计方式中也可以加参数的
然后保存记事本 nircmd script “记事本路径"
就可以执行记事本中的所有参数
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 01:45 , Processed in 0.021733 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表