Способ сделать это (в Windows 7) будет отбрасывать все вложенные папки , используя -folder:с \*, например (при поиске .zip файлов внутри папки загрузки):
Или обобщить на любой текущий каталог:*.zip -folder:".\*"
protongun
1
NVM, выше не работает, как ожидалось. Возможно, кто-то может предложить коррекцию?
протонгун
* .zip -folder: ". \ *" также исключает текущий напрямую (а также подкаталоги). Приведенный выше пример работает правильно, чтобы исключить все подкаталоги только в том случае, если «Загрузки» - это текущая работа напрямую.
Ashtonium
1
@Xzila Спасибо за косую черту, приведу простой пример: если у нас есть файл "foo.zip", какова его папка? его папка - «C: \ Downloads», это НЕ «C: \ Downloads \», поэтому, когда вы делаете «-folder:« Downloads \ * », она совпадает с более поздней, но не с первой, фактически исключая только подкаталоги
Ivan Castellanos
1
Пользователи Unix / Linux, подумайте внимательно, «-folder:» исключает соответствующую папку, отменяя предложение «folder:». Семантическая перегрузка снова просачивается из команды find.
BenPen
6
Чтобы не выполнять поиск в подпапках, в окне поиска нажмите «упорядочить» (верхний левый угол) и выберите параметр «Папка и параметры поиска». В этом окне выберите вкладку «Поиск». Снимите флажок «Включить подпапки в результаты поиска ...».
Это НЕ сработает. И это гнилая вопиющая ОПАСНАЯ ошибка в Проводнике. Подумайте Поиск -> Ctrl-A -> Удалить. Подпапки ВСЕГДА ищутся из окна поиска Explorer.
1
Ник определенно не прав. В Windows 7 это работает.
RD
6
Это постоянное изменение для случайного / эфемерного поиска, в этом нет никакого смысла.
Иван Кастелланос
5
-folder:(name_of_subfolder) исключит "name_of_subfolder" из результатов поиска.
@NiteCyper, он работал у вас в Windows 7? (Я не на Windows, но кажется, что параметр устарел? Смотрите ссылки, которые я добавил к ответу.)
Arjan
Для будущих читателей: кажется, что System.FileNameтакже могут совпадать имена каталогов , так что, возможно, System.FileName<>name_of_subfolderбудет работать. Кроме того, System.Kind может позволить System.Kind:<>folderисключить все папки (или в сочетании с System.FileNameопределенными папками?). И, кажется, можно использовать этот длинный список в поиске. (Но: я не использую Windows.)
Арджан
@Arjan Да, я использую Windows 7. Windows 7, кажется, автоматически удалила двоеточие.
NiteCyper
4
игнорировать folders (не содержащиеся в них файлы), затем попробуйте:
Его необходимо запустить из родительской папки для поиска в MyFolder, но не в подпапках MyFolder или дочерних папках. Двойные кавычки и начальный обратный слеш, по-видимому, необходимы. Я проверил это на Windows 7, и это сработало. Я нашел этот ответ здесь: answers.microsoft.com: как мне НЕ искать подкаталоги
Хотя я нашел опцию исключения папки из другого ответа (спасибо), если у вас есть много подпапок для исключения, эта опция, вероятно, проще.
В Windows 8 я также смог запустить это из каталога, в котором нужно выполнить поиск. Например, C:\fooвведите *.zip folder:"\foo"в поле поиска. Спасибо за информацию и ссылку!
cxw
0
Я работаю на Windows 10, но сомневаюсь, что все изменилось. Если я прав, приведенные выше ответы неверны.
В поле поиска
Если вы идете: common * source
... это вызывает все файлы и папки с подстрокой "common", за которой следует подстрока "source": например, commons-collection4-4.0-sources.jar
NB. По какой-то необъяснимой (микро $ oft) причине, даже если вы установили параметр НЕ для поиска содержимого файла в «Дополнительные параметры», он все равно будет искать содержимое файлов, если вы не предшествуете строке поиска с помощью «name». : "или" имя файла: "
Если вы идете: имя: общий * источник
... ничего не подходит!
Если вы идете: filename: common * source
... это вызывает все файлы и папки с подстрокой "common", за которой следует подстрока "source": например, commons-collection4-4.0-sources.jar
Если вы пойдете: filename: common
... он вызовет все файлы и папки, которые имеют "common" в своем имени.
Если вы идете: filename: common -folder
... он выведет только файлы (без папок) с "common" в их имени
Обратите внимание на разницу между «имя» и «имя файла». Я подозреваю, что в первом случае он использует «свойство» файла, скрытого где-то, и что большую часть времени вы захотите искать «имя файла».
Также обратите внимание, что использование подстановочного знака * требует, чтобы часть перед ним предшествовала части после него (конечно). Если вы хотите, чтобы эти подстроки появлялись в вашем имени файла в любом порядке , это немного сложно. Вы должны сделать что-то вроде этого:
Ответы:
Способ сделать это (в Windows 7) будет отбрасывать все вложенные папки , используя
-folder:
с\*
, например (при поиске .zip файлов внутри папки загрузки):Вот и все.
источник
*.zip -folder:".\*"
Чтобы не выполнять поиск в подпапках, в окне поиска нажмите «упорядочить» (верхний левый угол) и выберите параметр «Папка и параметры поиска». В этом окне выберите вкладку «Поиск». Снимите флажок «Включить подпапки в результаты поиска ...».
источник
-folder:(name_of_subfolder)
исключит "name_of_subfolder" из результатов поиска.На веб-сайте Microsoft см. Раздел «Расширенный синтаксис запроса» для получения дополнительных параметров (некоторые из которых могут быть устаревшими) и Дополнительные советы по поиску в Windows, которая использует более новый синтаксис, например
System.Kind:<>picture
, но кажется менее полным.источник
System.FileName
также могут совпадать имена каталогов , так что, возможно,System.FileName<>name_of_subfolder
будет работать. Кроме того, System.Kind может позволитьSystem.Kind:<>folder
исключить все папки (или в сочетании сSystem.FileName
определенными папками?). И, кажется, можно использовать этот длинный список в поиске. (Но: я не использую Windows.)игнорировать
folders
(не содержащиеся в них файлы), затем попробуйте:источник
* .zip папка: "\ MyFolder"
Его необходимо запустить из родительской папки для поиска в MyFolder, но не в подпапках MyFolder или дочерних папках. Двойные кавычки и начальный обратный слеш, по-видимому, необходимы. Я проверил это на Windows 7, и это сработало. Я нашел этот ответ здесь: answers.microsoft.com: как мне НЕ искать подкаталоги
Хотя я нашел опцию исключения папки из другого ответа (спасибо), если у вас есть много подпапок для исключения, эта опция, вероятно, проще.
источник
C:\foo
введите*.zip folder:"\foo"
в поле поиска. Спасибо за информацию и ссылку!Я работаю на Windows 10, но сомневаюсь, что все изменилось. Если я прав, приведенные выше ответы неверны.
В поле поиска
Если вы идете:
common * source
... это вызывает все файлы и папки с подстрокой "common", за которой следует подстрока "source": например, commons-collection4-4.0-sources.jar
NB. По какой-то необъяснимой (микро $ oft) причине, даже если вы установили параметр НЕ для поиска содержимого файла в «Дополнительные параметры», он все равно будет искать содержимое файлов, если вы не предшествуете строке поиска с помощью «name». : "или" имя файла: "
Если вы идете:
имя: общий * источник
... ничего не подходит!
Если вы идете:
filename: common * source
... это вызывает все файлы и папки с подстрокой "common", за которой следует подстрока "source": например, commons-collection4-4.0-sources.jar
Если вы пойдете:
filename: common
... он вызовет все файлы и папки, которые имеют "common" в своем имени.
Если вы идете:
filename: common -folder
... он выведет только файлы (без папок) с "common" в их имени
Обратите внимание на разницу между «имя» и «имя файла». Я подозреваю, что в первом случае он использует «свойство» файла, скрытого где-то, и что большую часть времени вы захотите искать «имя файла».
Также обратите внимание, что использование подстановочного знака * требует, чтобы часть перед ним предшествовала части после него (конечно). Если вы хотите, чтобы эти подстроки появлялись в вашем имени файла в любом порядке , это немного сложно. Вы должны сделать что-то вроде этого:
filename: "* test *" AND "* co *" -folder
... что эквивалентно этому:
filename: "* co *" AND "* test *" -folder
или действительно это:
filename: папка "* test *" + "* co *"
источник
В Windows 10 вы можете выбрать текущую папку на панели инструментов ленты
источник