У меня есть несколько текстовых файлов, содержащих тысячи электронных писем для маркетинга. Эти файлы содержат также другую информацию, чем эти письма. Можно ли с помощью cmd выбрать все эти файлы вместе, отфильтровать эти электронные письма специально и вывести их в документ Excel?

2 ответа2

1

Стандартная утилита "найти", синтаксис и доступные опции показаны:

C:\> find /?

Пример сеанса в командной строке:

cd /d C:\
dir /s /b >FILES.txt
find /i "calc" FILES.txt
...

... может отображать путь и имя файла EXE-файла Windows Calculator.

Если вы хотите найти более одного поискового запроса, используйте каналы; как в:

find /i "text for first coarse search" FILES.txt | find /i "fine tune it" | find /i "yet more fine tuned"

Если вы хотите еще больше опций, попробуйте найти утилиту "grep" для Windows, но тогда вам нужно будет понимать "регулярные выражения" - как всегда; поскольку удобство увеличивается, сложность склонна делать то же самое.

1

Я обновил свой скрипт jgrep.bat, чтобы иметь возможность этого с новым флагом -o . Чтобы использовать его для вашей проблемы, вам нужно скопировать скрипт в папку, где у вас есть эти файлы, затем создать новый файл и добавить его к нему:

@echo off
cd "%~dp0"
FOR /R . %%G IN (*.txt) DO @jgrep.bat -o "[A-Za-z0-9/-_.]+@[A-Za-z0-9\-_.]+" < "%%G"
pause

Это должно делать то, что вы хотите. Просто скопируйте эти результаты в таблицу Excel.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .