17
findstr /v "black"  File1.txt

Над командой DOS будет отображаться содержимое файла «File1.txt», который не соответствует строке "черный".

Как изменить эту команду, если мне нужно отфильтровать слова "черный" и "белый"?

2 ответа2

23

Как отфильтровать слова "черный" и "белый"?

Следующая команда отобразит все строки, содержащие "black" НОР, "white":

findstr /v "black white" blackwhite.txt

Следующая команда отобразит все строки, содержащие "black" ИЛИ "white":

findstr "black white" blackwhite.txt

Следующая команда отобразит все строки, содержащие ТОЧНО "black white ":

findstr /c:"black white" blackwhite.txt

Следующая команда отобразит все строки, содержащие "black" и "white":

findstr "white" blackwhite.txt | findstr "black"

Заметки:

  • Если строка поиска содержит несколько слов, разделенных пробелами, findstr возвращает строки, содержащие любое слово (ИЛИ).

  • Литеральный поиск (/C:string) полностью изменяет это поведение и позволяет искать фразу или предложение. Литеральный поиск также позволяет искать знаки препинания.

Пример файла данных (blackwhite.txt):

red
black
white
blue
black white
black and white

Пример вывода:

F:\test>findstr /v "black white" blackwhite.txt

red
blue

F:\test>findstr "black white" blackwhite.txt
black
white
black white
black and white

F:\test>findstr /c:"black white" blackwhite.txt
black white

F:\test>findstr "white" blackwhite.txt | findstr "black"
black white
black and white

Дальнейшее чтение

0

Если вам нужно отобразить все строки со словами "черный" или "белый", то избавьтесь от /v в вашей команде.

Попробуйте: findstr белый File1.txt или findstr черный File1.txt или findstr "черный белый" File1.txt

Операнд /V напечатает все строки, которые НЕ содержат строку поиска.

Тип findstr /? для получения дополнительной информации о том, как использовать findstr.

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