日期:2014-05-17  浏览次数:20991 次

用bat查找文件夹并创建快捷方式
 文件夹abc不知道在哪个盘, 请问用bat如何查找并创建快捷方式abc到桌面
------解决方案--------------------
比如你要搜出所有的windows文件夹,创建快捷方式。

注意文件夹名称前面要用\符号打头,否则会把包含windows字符的文件夹都搜出来。


@echo off&setlocal enabledelayedexpansion
set folderName=\windows
set i=0
set ii=IconIndex=3
for %%d 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 "tokens=*" %%a in ('dir /ad/b/s %%d:^
------解决方案--------------------
findstr /i /e "%folderName%"') do (
    set /a i+=1
    set LNKName="%USERPROFILE%\桌面\%folderName% ^(!i!^).url"
    echo [InternetShortcut]>!LNKName!
    echo URL="%%a">>!LNKName!
    echo !ii!>>!LNKName!
    echo IconFile="%windir%\system32\shell32.dll">>!LNKName!
  )
)
echo %i%
pause

------解决方案--------------------
几个盘包含这个文件夹 如果有2个 就快捷方式abc (2) 3个写成 abc (3) 依次类推
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

@echo off & setlocal enableDelayedExpansion
set b=0
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 ( 
set /a b+=1

echo !b!、找到目录:%%i
echo !b!、桌面快捷方式:abc_(!b!)

echo [InternetShortcut] >>"%USERPROFILE%\Desktop\abc_(!b!).url"
echo URL="%%i" >>"%USERPROFILE%\Desktop\abc_(!b!).url"
echo IconIndex=3 >>"%USERPROFILE%\Desktop\abc_(!b!).url"
echo IconFile="%windir%\system32\shell32.dll" >>"%USERPROFILE%\Desktop\abc_(!b!).url"

)



C:\Documents and Settings\Administrator>%USERPROFILE%
'C:\Documents' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
看环境变量,不是这样看的,在cmd下运行set命令显示环境变量