Команда find - пошук рядка символів в файлі
Відео: Пошук файлів за вмістом і тексту всередині файлів
команда FIND використовується для пошуку текстової рядки в одному або декількох файлах. Якщо шлях не заданий, команда FIND виконує пошук в тексті консолілібо в тексті, переданому по конвеєру іншою командою (в тексті, що є висновком команди, що виконується в ланцюжку з FIND).Формат командного рядка:
FIND [/ V] [/ C] [/ N] [/ I] [/ OFF [LINE]] "рядок" [[диск:] [шлях] ім`я файлу [...]]Параметри команди:
/ V - Висновок всіх рядків, НЕ містять задану рядок.
/ C - Висновок тільки загального числа рядків, що містять задану рядок.
/ N - Висновок номерів відображаються рядків.
/ OFF [LINE] - Чи не пропускати файли з встановленим атрибутом "Автономний".
/ I - Пошук без урахування регістру символів.
"Рядок" - Шуканий рядок.
[Диск:] [шлях] ім`я файлу - Один або кілька файлів, в яких виконується пошук.
Приклади використання:
FIND /? - видати довідку по використанню команди.
find / I myfile.txt "новина" - виконати пошук рядка новина без урахування регістру символів в текстовому файлі myfile.txt . За замовчуванням, якщо не заданий параметр / Iрегістр символів враховується.
find / C myfile.txt "новина" - відобразити загальну кількість рядків, що містять текст "новина".
FIND / I% TEMP% *. Tmp "windows" - виконати пошук в каталозі тимчасових файлів для всіх файлів з розширенням tmp рядків, що містять текст windows без урахування регістру символів.
FIND / I% TEMP% *. Tmp "windows" | more - то ж, що і в попередньому прикладі, але з використанням посторінкового виведення на екран.
ipconfig / all | FIND "DNS" - з виведення команди ipconfig / all знайти рядки, які містять текст DNS
Зверніть увагу, на нехарактерний синтаксис цієї команди - рядок пошуку обов`язково полягає в подвійні лапки, тому імена та шляхи файлів, що містять пробіли, обробляються некоректно. Для пошуку в таких файлах можна скористатися перенаправленням введення (символ lt; )
find "html" lt; "C: Documents And Settings USER settings.xml"
Відповідно, приклад з пошуком в тимчасових файлах, наведений вище, в ОС Windows XP (значення змінної% TEMP% за замовчуванням приймає шлях з пробілами) буде виполнятьсяверно при використанні наступної команди:
FIND / I "windows" lt; "% TEMP% textfile.tmp"
Природно, шаблон імені файлу * .tmp використовувався в прикладі вище, при перенаправлення вводу застосовувати не можна (перенаправлення можна виполнятьдля конкретного файлу - textfile.tmp в прикладі) і для організації пошуку текстової рядки в декількох файлах можна скористатися циклічної обробкою їх вмісту, наприклад, за допомогою командиFOR.
@ECHO OFF
for %% i in ( "% TEMP% *. tmp") do FIND %% i "windows"
. . .
застосування команди FIND для пошуку рядка в результатах виведення іншої програми використовується, наприклад, для визначення доступності мережевого вузла за допомогою команди PING . утиліта ping.exe не повертає прізнакдоступності пінгуемого адреси в значенні змінної ERRORLEVEL (Ненульове значення ERRORLEVEL утиліта ping.exe формує тільки в тому випадку, якщо задані помилкові параметри командного рядка). Тому, для определеніядоступності IP- адреси, використовується аналіз виведення ping.exe, який відрізняється для доступного і недоступного вузла. Так, наприклад, якщо пінгуемий наявно, то в повідомленні буде присутній значення TTL:
Обмін пакетами з yandex.ru [87.250.250.11] по 32 байт:
Відповідь від 87.250.250.11: число байт = 32 час = 10мс TTL = 55
А в разі недоступності, рядок символів "TTL" в виводяться результати відсутня. Якщо рядок символів "TTL" знайдена, то FIND сформує значення змінної ERRORLEVEL рівним 0Таким чином, для визначення факту доступності вузла в командному файлі можна скористатися следующімспособом:
ping -n 1 COMPUTER | find / I "TTL" gt; nul
if% ERRORLEVEL% == 0 goto LIVE
ECHO computer не доступний
підпрограма обробки недоступного стану
. . .
Exit
: LIVE - початок підпрограми обробки стану доступності вузла
. . .
. . .
команда ping використовується в ланцюжку з командою find (Конвеєр) і результати її виведення використовуються в качествеввода для пошуку рядка "TTL". У конвеєр додана команда перенаправлення стандартного виводу на фіктивне пристрій nul, тобто придушення виведення. Ключ -n 1 задає одноразовий опитування вузла COMPUTER для ping.exe.
Поділися в соціальних мережах:
Схожі
- Find face
- If - оператор умовного виконання команд в командних файлах windows
- Команда doskey - редагування і повторний виклик команд windows- створення макросів doskey.
- Офіційно названі характеристики смартфона oppo find 7
- Як знайти нові файли в linux
- Команда attrib
- Команда echo - висновок тексту на екран консолі
- Команда dir
- Команда where - пошук файлів за шаблоном імені.
- Команда recover - відновлення збережених даних на пошкодженому диску.
- Path - відобразити або змінити шляху пошуку виконуваних файлів.
- Пошук тексту в файлах linux
- Команда findstr
- Команда more - посторінковий вивід на екран консолі.
- Команда fc - порівняння файлів.
- Driverquery - відобразити список встановлених драйверів.
- Type - висновок на екран вмісту текстового файлу.
- Команда comp
- Команда move - перейменування або переміщення файлів і каталогів
- Команда find в linux
- Команда help - відобразити підказку по командам cmd