如何从Windows XP中的命令行打开“查找文件”对话框来search特定的文件夹?

我想创build一个热键来searchWindows XP中的特定文件夹下的文件 ; 我正在使用AutoHotkey来创build这个快捷方式。

问题是我需要知道要运行的命令行语句才能打开标准的Windows“查找文件/文件夹”对话框。 我google了一会儿,并没有发现任何页面指示如何做到这一点。

我假设,如果我知道提出这个提示的命令行语句,它将允许我传入一个参数,我想要在哪个文件夹下进行search。 我知道你可以通过在XP中右键单击一个文件夹来做到这一点,所以我认为有一些方法,我可以在命令行上做到这一点…?

Solutions Collecting From Web of "如何从Windows XP中的命令行打开“查找文件”对话框来search特定的文件夹?"

http://www.pcreview.co.uk/forums/thread-1468270.php

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

使用Locate32

这不是您的问题的确切答案,但您可以使用Locate32而不是Windows搜索工具。 它具有一整套命令行选项,并且具有索引搜索的巨大优势,这意味着结果将立即显示。 这是我在Windows上不能没有的工具。

这是你要发送的命令来搜索D:\home所有index.php文件:

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

-r开关使Locate32搜索立即没有用户干预(没有它,接口将启动和字段将填充,但你必须按Enter键继续进行搜索)和-p D:\home是搜寻路径。

使用AutoHotKey,将上述命令分配给键盘快捷方式很简单。

在同一个名为locate.exe软件包中还有一个完全基于命令行的Locate32版本。 它使用与Locate32相同的索引,但由于它完全基于CLI,可以被脚本语言和其他工具使用,以利用其提供的出色搜索性能。

F3或Win + F是一个热键,将启动查找文件。 如果您使用所需条件进行搜索,则可以使用“文件”菜单保存搜索。 这将创建一个.FND文件。 FND文件可以从命令行或通过使用autohotkey创建的热键启动。

可以编辑.FND文件(二进制文件)并更改它正在搜索的内容,但是我会避免这样做,除非它是您完成所需内容的唯一方法。 我试过了,它工作正常。

从命令行无法让资源管理器显示搜索文件窗格。 但是你可以用一些VBScript来解决它。

尝试这个

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

并用cscript / nologo ExplorerFind.vbs进行编译

只要执行这一行! (WinKey + R,CmdPrompt,快捷方式,ShellExecute,WinExec等)

 search-ms:query=New%20Folder& 

在桌面上查找所有快捷方式

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

在文件夹“C:\ Program Files”中找到文本“exe”

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

其他例子

 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& 

请参考http://msdn.microsoft.com/en-us/library/ff684385.aspx

尝试“Launchy”。 对于Windows和Linux。 真棒util。

如果你只需要一个热键,然后使用Win+f

你想要的最终结果是打开的“查找”对话框,还是只是寻找一种命令行方式来搜索任意目录,这一点还不清楚。 如果后者有FINDSTR(假设你想搜索文件的内容而不是他们的名字):

什么是Windows的良好的grep工具?

除了Ben Dunlap的回答:还可以在DIR命令的输出上使用FINDSTR(例如在FOR循环中)。这将搜索文件名,而不是搜索文件。

基于从cmd Vitim.us的答案,所有你需要的是explorer.exe "search-ms:query=*.exe&crumb=location:C:\Program Files&"根据需要更改位置和查询

你为什么不试试抨击F3? 🙂