Автоматизация поиска
Select messages from
# through # FAQ
[/[Print]\]

Total Commander -> Автоматизация Total Commander

#1: Автоматизация поиска Author: Yuk PostPosted: Tue Nov 24, 2009 23:58
    —
Есть текстовый файл строк примерно в 100 или более. Надо найти файлы в определенном каталоге (все файлы текстовые), в которых встречается хотя бы одна строка из первого файла (где и как угодно, без учета символа конца строки).
Можно это сделать в ТС?
Спасибо.

#2:  Author: ВахмуркаLocation: Большая деревня Москва PostPosted: Wed Nov 25, 2009 01:25
    —
"В ТС" или "средствами ТС"? На первый вопрос - ответ "да", на второй - "нет" (насколько я знаю).
Давненько я не программировал батники, но сдается мне, что нечто подобное сделать можно. На досуге посмотрю.

#3:  Author: Tol!kLocation: Арзамас PostPosted: Wed Nov 25, 2009 01:55
    —
Yuk, примерно так:
findstr /m /g:список_строк.lst d:\путь\*.txt > найдено.lst
подробности: findstr /?

#4:  Author: Yuk PostPosted: Wed Nov 25, 2009 21:16
    —
Tol!k
Спасибо. Работает.

Не получается засунуть в Старт Меню, чтобы использовался файл под курсором, а директория в другой панели.

Command: cmd /c
Parameteres: findstr /m /g:"%N" "%T" > found.txt

Файл создается, но пустой. А из командной строки все работает.
А можно ли сделать, чтобы найденные файлы выделялись?

#5:  Author: Tol!kLocation: Арзамас PostPosted: Wed Nov 25, 2009 21:58
    —
Code:
Parameteres: findstr /m /g:%N "%T*" > found.txt

Quote:
А можно ли сделать, чтобы найденные файлы выделялись?

В TC есть команды cm_LoadSelectionFromFile и cm_LoadSelectionFromClip (файлы выделяются в активной панели)

#6:  Author: swr PostPosted: Thu Mar 25, 2010 14:25
    —
Всё прекрасно работает, если в указанном каталоге лежат непосредственно сами файлы, в которых производится поиск, но как быть если надо производить поиск во всех вложенных папках, начиная с указанного каталога?

#7:  Author: Tol!kLocation: Арзамас PostPosted: Thu Mar 25, 2010 14:40
    —
findstr/? wrote:
/D:список_папок — Поиск в списке папок (разделяются точкой с запятой)

Добавлено
Видимо, невнимательно прочитал
Quote:
поиск во всех вложенных папках, начиная с указанного каталога
Проще использовать параметр /S

Last edited by Tol!k on Fri Mar 26, 2010 13:56; edited 1 time in total

#8:  Author: swr PostPosted: Thu Mar 25, 2010 19:13
    —
Сурово! Shocked

И ещё в добавок, что то не выходит у меня, помотрите пожалуйста, где накосячил:

1. Ничего не находит
findstr /m /g:"%N" "c:\TempDir\13\*";"c:\TempDir\14\*" > found.txt

2. Запускается cmd и ничего не происходит
findstr /m /g:"%N" /D:"c:\TempDir\13\*";"c:\TempDir\14\*" > found.txt

ещё несколько 5-ок вариаций перепробовал, напишите пожалуйста как правильно надо Embarassed

#9:  Author: Tol!kLocation: Арзамас PostPosted: Fri Mar 26, 2010 14:15
    —
a) %N вредно заключать в кавычки
б) findstr /m /g:%N /d:"c:\TempDir\13";"c:\TempDir\14" *.* > found.txt

дальше наоборот: файл-список-слов под курсором, но в НЕактивной панели
в) findstr /s /m /g:%T%M *.* > found.txt — поиск в текущем каталоге и его подкаталогах
г) findstr /m /g:%T%M /f:%L > found.txt — файлы, в которых производится поиск, выделены в активной панели

#10:  Author: swr PostPosted: Fri Mar 26, 2010 20:58
    —
Огромнейшее вам спасибо, так намного лучше! Wink



Total Commander -> Автоматизация Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Page 1 of 1

Powered by phpBB © 2001, 2005 phpBB Group