Извлечь строки из текстового файла в другой текстовый файл? В .bat - PullRequest
2 голосов
/ 01 октября 2019

У меня есть текстовый файл, который содержит имена всех файлов в моем каталоге, за которыми следует его дата.

Возможно ли в batch / bash извлечь имена этих файлов из текстового файла и его дату на основезначение в строке.

Я уже проверил Извлечение строк из текстового файла , но это не отвечает на мой запрос. Я также проверил множество других, в том числе Получить определенную строку из текстового файла с помощью пакетной команды и, похоже, зашел в тупик, так как он не получает все строки из всего текстового файла.

типичное имя строки / файла выглядит так*

Идентификатор - IRO. У меня есть и другие файлы в текстовом файле, но я хочу, чтобы он мог просматривать текстовый файл, находить все, что имеет идентификатор, и создавать новый текстовый файл с заполненным файлом IRO и датой.

Есть около 150 000 строк +/- строки, поэтому сделать это вручную будет нелегко.

Если это возможно сделать в пакетном файле, я был бы признателен.

1 Ответ

3 голосов
/ 01 октября 2019

Это довольно легко, если вы думаете об этом. Отфильтруйте ваш файл с помощью findstr "_IRO_"), затем разделите имя файла по дате с помощью цикла for /f (в соответствии с вашим примером они разделены запятой):

(for /f "delims=," %%a in ('type "names.txt" ^|findstr "_IRO_"') do @echo %%a) > "newnames.txt"

Примечание: чтобы выполнить егозаменяйте каждый %%a на %a.

непосредственно из командной строки, а не в командном файле.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...