Board logo

标题: [文件操作] 【已解决】批处理如何搜索桌面快捷名称及路径? [打印本页]

作者: locoman    时间: 2020-5-9 14:08     标题: 【已解决】批处理如何搜索桌面快捷名称及路径?

本帖最后由 locoman 于 2020-5-19 16:17 编辑

请教大神:
      我需要对WINDOWS桌面上的程序快捷方式进行搜索,并将搜索成功的快捷方式的文件夹位置路径列出来。
请大神帮助,谢谢!

如:我需要搜索名称为“智能办公”的是否在桌面有其快捷方式存在?
存在。就在d:\test\ss.txt中写入其文件夹路径;
不存在。也生成d:\test\ss.txt,只是内容为空。


拜托!
作者: 不知道是谁    时间: 2020-5-10 01:51

  1. @echo off
  2. set "file=C:\Users\Administrator\Desktop\智能办公.lnk"
  3. set "save=D:\Test\SS.txt"
  4. if not exist "D:\Test" md "D:\Test"
  5. for /f "delims=" %%i in ('wmic path win32_shortcutfile where "name='%file:\=\\%'" get target /value^|find "="') do set "%%~i"
  6. if exist %file% (echo %target%>%save%) else echo,>%save%
  7. pause
复制代码

作者: smss    时间: 2020-5-10 10:00

  1. 改成"%userprofile%\desktop\智能办公.lnk" 不是每人的用户名都是Administrator
复制代码

作者: 不知道是谁    时间: 2020-5-11 00:22

  1. 你要这么说的话,那你也该考虑下“C:\Users\Public\Desktop\智能办公.lnk”,你也不能确定就一定是在当前用户的桌面下,如果是XP系统,那你还要再改
复制代码

作者: locoman    时间: 2020-5-15 14:12

本帖最后由 locoman 于 2020-5-15 14:15 编辑

回复 2# 不知道是谁
感谢大神们的热情相助!
但是,代码运行后,结果里的文本文件里面是空的,什么也没有。
CMD黑窗口的信息总是显示(其实桌面是有所查询的快捷方式存在的):

没有可用实例。
请按任意键继续. . .



测试环境是WIN10


作者: 不知道是谁    时间: 2020-5-15 18:00

右键你想要查找的快捷方式,点击属性,再点击常规,查看快捷方式的位置
复制位置中的路径替换红色部分 set "file=C:\Users\Administrator\Desktop\智能办公.lnk"
作者: locoman    时间: 2020-5-19 16:17

右键你想要查找的快捷方式,点击属性,再点击常规,查看快捷方式的位置
复制位置中的路径替换红色部分 set ...
不知道是谁 发表于 2020-5-15 18:00



    谢谢您的一再热心帮助,一楼代码没有问题,现在执行正常了。
完全符合提问需求,正解,谢谢了!!





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2