关于用bat查找文件并创立快捷方式的
本帖最后由 qy5408535 于 2012-10-28 18:36:34 编辑
看到另一篇帖子上发了一个“关于用bat查找文件并创立快捷方式的”问题,自己回去试试
@echo off
for %%a in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do (
for /f "delims=|" %%i in ('dir /ad /b /s %%a:\abc?') do (
echo %%i
echo [InternetShortcut] >>"%USERPROFILE%\桌面\abc.url"
echo URL="%%i" >>"%USERPROFILE%\桌面\abc.url"
echo IconIndex=3 >>"%USERPROFILE%\桌面\abc.url"
echo IconFile="%windir%\system32\shell32.dll" >>"%USERPROFILE%\桌面\abc.url"
)
)
这是代码:http://topic.csdn.net/u/20121024/20/94ef8399-8246-489c-ad38-1b5e85489613.html?87493这是原贴
可是运行结果却是
哪位大神帮帮忙 看看是怎么一回事 万分感谢
------最佳解决方案--------------------
C:\Users\雨虹\Desktop>set b=0
C:\Users\雨虹\Desktop>for %a in (a b c d e f g h i j k l m n o p q r s t u v w x
y z) do (for /F "delims=
------其他解决方案--------------------for /f "delims=
------其他解决方案--------------------" %%i in ('dir /ad /b /s %%a:\abc')改成
for /f "delims=
------其他解决方案--------------------" %%i in ('dir /ad /b /s %%a:\abc?')
------其他解决方案--------------------http://topic.csdn.net/u/20121024/20/94ef8399-8246-489c-ad38-1b5e85489613.html
为什么我运行的时候出现 参数格式不正确-“color”.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
因为我前面的代码,本来想把?符号标红色出来的,结果发错了,直接当作源代码发出了
帖子已更新了
------其他解决方案--------------------这按照你说的 可是又显示“系统找不到指定的路径”
------其他解决方案--------------------系统找不到指定的路径
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
两个原因,
1、因为前面是循环查找a-z盘,那没有的盘,自然提示找不到路径了,比如:
dir /ad /b /s z:\abc?
这个是正常的
2、是后面的桌面输出路径"%USERPROFILE%\desktop的原因,比如:
XP系统是:"%USERPROFILE%\桌面
win7系统是:"%USERPROFILE%\Desktop
如果你是XP系统,用"%USERPROFILE%\Desktop,就是找不到路径了
------其他解决方案--------------------嗯 先谢了哈
但还是有问题的,比如说我在f盘下建立了个名为abc的文件夹,如果按照之前的代码还是显示 系统找不到指定的路径 之后我将for /f "delims=
------其他解决方案--------------------" %%i in ('dir /ad /b /s %%a:\abc?'中的%%a:\abc?改为 f:\abc?
运行之后倒是没有错误,但是竟然会创建52个abc文件夹的快捷方式,而且就算这样没错的话,这我本来的意思就是不知道在那个盘中,就是要程序循环查找的,而且我电脑的盘就是c.d.e.f.h五个盘的,应该是可以查到的啊。可是还是之前的错误。我的系统也是win764位的
------其他解决方案--------------------测试时,如果不清楚在哪里有问题,可以先将echo on看回显
偶的xp,win7 64测试都没问题
------其他解决方案--------------------" %i in ('dir /ad /b /s %a:\abc? ') do (
set /a b+=1
echo on !b!、找到目录:%i
echo on !b!、桌面快捷方式:abc_(!b!)
echo on [InternetShortcut] 1>>"C:\Users\雨虹\Desktop\abc_(!b!).url"
echo on URL="%i" 1>>"C:\Users\雨虹\Desktop\abc_(!b!).url"