Hvordan åbner jeg dialogboksen 'Find filer' fra kommandolinjen i Windows XP for at søge i en bestemt mappe?

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg vil gerne oprette en genvejstast for at søge efter filer under en bestemt mappe i Windows XP; jeg bruger AutoHastkey til at oprette denne genvej.


Problemet er, at jeg har brug for at kende en kommandolinjestyring til at køre for at åbne den standard Windows 'Find Files/Folders' dialog. Jeg har gået et øjeblik og har ikke fundet nogen side, der angiver, hvordan man gør dette.


Jeg antager, at hvis jeg kender kommandolinjedannelsen til at oprette denne prompt, vil det tillade mig at passere i en parameter for hvilken mappe jeg vil søge under. Jeg ved, at du kan gøre dette ved at højreklikke på en mappe i XP, så jeg går ud fra, at der er en måde jeg kunne gøre på kommandolinjen ...?

Bedste reference


fra http://www.pcreview.co.uk/forums/thread-1468270.php[15]


@echo off
echo CreateObject("Shell.Application").FindFiles >\%temp\%myff.vbs
cscript.exe //Nologo \%temp\%myff.vbs
del \%temp\%myff.vbs

Andre referencer 1


Brug Locate32



Dette er ikke det nøjagtige svar på dit spørgsmål, men du kan bruge Find 32 i stedet for Windows-søgningsfaciliteten. Det har en hel række kommandolinjeindstillinger plus har den store fordel at være en indekseret søgning , hvilket betyder, at resultaterne vises øjeblikkeligt. Det er et værktøj, jeg kan ikke være uden på Windows. [16] [17]


Dette er den kommando, du vil udstede for at søge efter alle index.php filer i D:home:


locate32.exe -r -p D:home index.php


hvor -r -knappen gør Locate32 søgning straks uden brugerintervention (uden det vil grænsefladen starte og felterne vil blive befolket, men du skal trykke Enter for at fortsætte med søgningen) og -p D:home er vejen til søgning.


Med AutoHotKey er det nemt at tildele ovenstående kommando til en tastaturgenvej.


Der er også en fuldt kommandolinjebaseret version af Locate32 i samme pakke kaldet locate.exe. Dette bruger de samme indekser som Locate32, men fordi det er helt CLI-baseret, kan det bruges af scripting-sprog og andre værktøjer til at udnytte den blisterende søgeydelse, den tilbyder.

Andre referencer 2


F3 eller Win + F er en genvejstast, der vil starte Find Files. Hvis du derefter gør en søgning ved hjælp af de kriterier, du ønsker, kan du gemme søgningen ved hjælp af menuen Filer. Dette skaber en .FND-fil. FND-filen kan startes fra kommandolinjen eller fra en genvejstast, der er oprettet med autohotkey.


Det er muligt at redigere .FND-filen (binær) og ændre hvad den søger efter, men jeg ville undgå at gøre det, medmindre det er den eneste måde du kan opnå, hvad du vil. Jeg prøvede det, og det fungerede fint.

Andre referencer 3


Der er ingen vej fra kommandolinjen for at få Explorer til at vise vinduet Søg filer. Men du kan komme over det med nogle VBScript.


Prøv dette


'ExplorerFind.vbs
Dim objShell
Set objShell = WScript.CreateObject("Shell.Application")
objShell.FindFiles


Og kompilere det med cscript/nologo ExplorerFind.vbs

Andre referencer 4


bare udfør denne linje! (WinKey + R, CmdPrompt, Genvej, ShellExecute, WinExec, osv.)


search-ms:query=New\%20Folder&


Find alle genveje på dit skrivebord


search-ms:query=*.lnk&crumb=folder:\%userprofile\%Desktop&


Find teksten 'exe' i mappen 'C: \ Program Files'


search-ms:query=exe&crumb=location:C:Program Files&


Andre eksempler


search-ms:query=microsoft&
search-ms:query=vacation&subquery=mydepartment.search-ms&
search-ms:query=seattle&crumb=kind:pics& 
search-ms:query=seattle&crumb=folder:C:MyFolder&


henvises her http://msdn.microsoft.com/en-us/library/ff684385.aspx[18]

Andre referencer 5


Prøv 'Launchy'. Til Windows og Linux. Awesome util.

Andre referencer 6


Hvis du kun har brug for en genvejstast, skal du bruge Win+f.

Andre referencer 7


Det er lidt uklart, om det ønskede resultat er den åbne 'find' -dialog, eller hvis du bare leder efter en kommandolinjestil til at søge en vilkårlig mappe. Hvis sidstnævnte er FINDSTR (forudsat at du vil søge i indholdet af filer og ikke deres navne):


Hvad er gode grepværktøjer til Windows?

Andre referencer 8


Tilføjelse til Ben Dunlaps svar: Du kan også bruge FINDSTR på output fra DIR-kommandoen (for eksempel i en FOR-loop)
Dette ville søge efter filnavne, ikke i filer.

Andre referencer 9


Baseret på svaret fra Vitim.us fra cmd alt hvad du behøver er
explorer.exe "search-ms:query=*.exe&crumb=location:C:Program Files&"
Skift placering og forespørgsel efter behov

Andre referencer 10


Hvorfor forsøger du ikke at baske F3? :)