批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程
[批处理文件精品]批处理版照片整理器[批处理文件精品]纯批处理备份&还原驱动在线第三方下载
返回列表 发帖

Windows下用批处理批量创建快捷方式

我这里抛砖引玉,希望有人能把这个批处理改进一下,比如遇到文件或文件夹空格和重复的exe运行文件怎么办,或者做成PowerShell版的

要用到的命令行工具NirCmd
NirCmd.exe下载后复制到系统目录
32位系统复制到C:\Windows\System32
64位系统复制到C:\Windows\SysWOW64

NirCmd下载地址
http://www.nirsoft.net/utils/nircmd-x64.zip
http://www.onlinedown.net/soft/970876.htm
NirCmd 中文版帮助文档
http://down.51cto.com/data/1976412



批量创建快捷方式,有分类目录

创建目录环节

首先创建好目录,下载好软件,按照下面的格式放入目录,软件必须是绿色便携(Portable),并且支持中文路径,如果不支持中文路径就得改为英文路径。
注意以下目录路径中不能带有空格,遇到空格必须替换成-或者其他字符,最好删除空格。#号后面的exe文件名不能重复,如果重复了需要更改为其他名称,exe应用名也要一起更改。
1.创建主目录
x:\app

2.创建分类目录
x:\app\下载
x:\app\硬件检测
x:\app\系统工具
x:\app\游戏工具
x:\app\网络游戏
x:\app\单机游戏

3.分类目录放入便携软件,我的思路是使用文件夹作为参数,用#号作为分割符,#号前面是快捷方式的名称,#号后面是exe运行文件的名称。
使用系统自带forfiles命令搜索.exe文件,使用nircmd shortcut命令批量创建快捷方式。


放入便携软件格式如下:
x:\apps\下载\迅雷#ThunderStart
x:\apps\硬件检测\显卡检测gpu-z#GPU-Z
x:\apps\系统工具\Hosts编辑器#HostsEditor
...
...


创建批处理环节

创建后的快捷方式位置默认在桌面app文件夹有需要可以更改。

批处理x:\app\批量创建快捷方式.bat内容为:
  1. @echo on
  2. rem 删除快捷方式
  3. ::nircmd execmd RD /s /q ~$folder.desktop$\app
  4. rem 创建快捷方式
  5. FOR /F %%i in ('dir /b /a:d /o:n') DO (
  6. FOR /F "delims=# tokens=1-2" %%a IN ('dir %~dp0%%i /b /a:d /o:n') DO (
  7. forfiles /p . /M %%b.exe /S /C "cmd /c nircmd shortcut @path ~$folder.desktop$\app\%%i %%a")
  8. )
  9. pause
复制代码
运行批处理x:\app\批量创建快捷方式.bat会在桌面生成“app”文件夹以及快捷方式图标。



批量创建快捷方式,没有分类目录


首先创建好目录,下载好软件,按照下面的格式放入目录,软件必须是绿色便携(Portable),并且支持中文路径,如果不支持中文路径就得改为英文路径。
注意以下目录路径中不能带有空格,遇到空格必须替换成-或者其他字符,最好删除空格。#号后面的exe文件名不能重复,如果重复了需要更改为其他名称,exe应用名也要一起更改。

创建主目录:
x:\游戏

放入游戏格式如下
x:\游戏\魔兽争霸3#War3
x:\游戏\孤单枪手#AlienShooter

创建批处理x:\游戏\批量创建游戏快捷方式.bat内容为:
  1. @echo on
  2. rem 删除快捷方式
  3. ::nircmd execmd RD /s /q ~$folder.desktop$\app\游戏
  4. rem 创建快捷方式
  5. FOR /F "delims=# tokens=1-2" %%a IN ('dir /b /a:d /o:n') DO (
  6. forfiles /p . /M %%b.exe /S /C "cmd /c nircmd shortcut @path ~$folder.desktop$\app\游戏 %%a")
  7. pause
复制代码
运行批处理x:\游戏\批量创建游戏快捷方式.bat会在桌面生成“app\游戏”文件夹以及快捷方式图标。
一个人,征服了自己,也就征服了世界。

返回列表