Ayuda para buscar imagen Jpg si existe en carpeta
Hola, en una carpeta tengo infinidad de carpetas, cada carpeta deberia de contener una imagen con nombre Folder.Jpg
No consigo hacer un Script que al ejecutarlo me indique en que carpetas falta la imagen Folder.Jpg
Saludos.
Ayuda para buscar en carpeta imagen Jpg si existe
Moderator: Flipeador
-
- Posts: 30
- Joined: 06 Sep 2022, 12:04
Re: Ayuda para buscar en carpeta imagen Jpg si existe
ejemplo
Code: Select all
#warn
setworkingdir,%a_scriptdir%
e1:="",e2:="",found:="NO"
;-
searchfor:="MyTest" ;- name from jpg file for search
folder:="C:\test" ;- search in this folder
;-
Loop, Files, %folder%\*.jpg,F ;- loop for jpg files in main folder
{
If InStr(a_loopfilefullpath,searchfor) ;- search for %searchfor%
{
e1 .= folder . "`r`n" ;- main folder contains file with %searchfor%
found=Y1
break
}
}
if (found="NO")
e2 .= folder . "`r`n" ;- NOT found in this folder %folder%
Loop, Files, %folder%\*.*, DR ;- loop for folders
{
fd:=a_loopfilefullpath
Loop, Files, %fd%\*.jpg,F ;- loop for jpg files in folder
{
If InStr(a_loopfilefullpath,searchfor) ;- search for %searchfor%
{
e1 .= fd . "`r`n" ;- folder contains file with %searchfor%
found=yes
}
}
if (found="yes")
{
found=No
continue
}
e2 .= fd . "`r`n" ;- NOT found in these folders
}
aa=Found "%searchfor%" in these folders=`n------------------`n%e1%`n`nNOT found "%searchfor%" in these folders=`n------------------`n%e2%
msgbox,%aa%
;fileappend,%aa%,test55.txt,utf-8
return
;============================================
/*
Found "MyTest" in these folders=
------------------
C:\test\Folder2
C:\test\Folder2\Subfolder2
C:\test\Folder3\Subfolder31
NOT found "MyTest" in these folders=
------------------
C:\test
C:\test\Folder1
C:\test\Folder3
C:\test\Folder3\Subfolder31\SubSubfolder31
*/
;==============================================
-
- Posts: 30
- Joined: 06 Sep 2022, 12:04
Re: Ayuda para buscar en carpeta imagen Jpg si existe
Thank you very much garry, it works perfectly.
Best regards.
Best regards.
Re: Ayuda para buscar en carpeta imagen Jpg si existe
Code: Select all
Carpeta := "E:\Gabriel\Pictures\Bonitos"
Archivo := "Prueba.jpg"
Todas := []
Existen := [] ; para las carpetas que contengan al Archivo
; saber todas las carpetas
Loop, Files, % Carpeta . "\*.*", DR ; D = buscar carpetas, R = Recurse subCarpetas
Todas.Push(A_LoopFileLongPath)
; saber que carpetas contienen el Archivo
Loop, Files, % Carpeta . "\" . Archivo , FR ; F = buscar archivos, R = Recurse subCarpetas
Existen.Push(A_LoopFileDir)
; calcular las carpetas que no contienen el archivo
For Ix, Carpeta in Todas
{
Está := False
For Iy, Folder in Existen
If (Carpeta = Folder)
Está := True
If !Está
Faltan .= Carpeta . "`n"
}
; Listar las carpetas donde no está Archivo
MsgBox % Faltan
Re: Ayuda para buscar en carpeta imagen Jpg si existe
@gmoises , gracias , buscar también en la carpeta principal , espero que esté bien
Code: Select all
Carpeta :="D:\M_MEDIA\M_FOTO"
Archivo := "Selina2018"
Todas := [],Existen :=[]
;--
Loop, Files, % Carpeta . "\" . Archivo . "*.*",F ;- F = buscar archivos in carpeta principal
Todas.Push(A_LoopFileDir)
Loop, Files, % Carpeta . "\*.*", DR ;- D = buscar carpetas, R = Recurse subCarpetas
Todas.Push(A_LoopFileLongPath)
Loop, Files, % Carpeta . "\" . Archivo . "*.*" , FR ;- F = buscar archivos, R = Recurse subCarpetas
Existen.Push(A_LoopFileDir)
For Ix, Carpeta in Todas
{
Está := False
For Iy, Folder in Existen
If (Carpeta = Folder)
Está := True
If Está
NoFaltan .= Carpeta . "`n"
else
Faltan .= Carpeta . "`n"
}
msgbox, 262144,Buscar %archivo% en la carpeta ,Search for =%archivo%`n------`ncontains in folder= `n-------`n %NoFaltan%`n-----------`nNot contains in folder = `n%faltan%
exitapp