如何在Windows XP中从命令行打开“查找文件”对话框以搜索特定文件夹?

时间:2008-09-18 18:36:16

标签: windows windows-xp

我想创建一个热键来搜索Windows XP中特定文件夹下的文件;我正在使用AutoHotkey创建此快捷方式。

问题是我需要知道要运行的命令行语句才能打开标准Windows“查找文件/文件夹”对话框。我用Google搜索了一段时间,但没有找到任何指示如何执行此操作的页面。

我假设如果我知道用于显示此提示的命令行语句,它将允许我传入我想要搜索的文件夹的参数。我知道你可以通过右键单击XP中的文件夹来实现这一点,所以我假设有一些方法可以在命令行中进行...?

11 个答案:

答案 0 :(得分:5)

使用Locate32

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

这是您在index.php中搜索所有D:\home个文件时要发出的命令:

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

-r开关在没有用户干预的情况下立即进行Locate32搜索(没有它,接口将启动并填充字段,但您必须按Enter键才能继续搜索)和{{ 1}}是搜索的路径。

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

在同一个名为-p D:\home的包中还有一个完全基于命令行的Locate32版本。它使用与Locate32相同的索引,但因为它完全基于CLI,脚本语言和其他工具可以使用它来利用它提供的极快的搜索性能。

答案 1 :(得分:4)

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

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

答案 2 :(得分:3)

命令行无法让Explorer显示“搜索文件”窗格。但你可以用一些VBScript来克服它。

试试这个

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

使用cscript / nologo ExplorerFind.vbs

编译它

答案 3 :(得分:3)

来自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

答案 4 :(得分:3)

只需执行此行! (WinKey + R,CmdPrompt,Shortcut,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

答案 5 :(得分:0)

尝试“Launchy”。对于Windows和Linux。很棒的工具。

答案 6 :(得分:0)

如果您只需要一个热键,请使用Win+f

答案 7 :(得分:0)

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

What are good grep tools for Windows?

答案 8 :(得分:0)

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

答案 9 :(得分:0)

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

答案 10 :(得分:-1)

你为什么不试着抨击F3? :)