Latest web development tutorials

Команда Grep Linux

Linux команда Daquan Linux команда Daquan

Команда Grep Linux используется для поиска файлов, которые соответствуют критериям строки.

Команда Grep используется для поиска контента, который содержит указанный файл шаблона стиля, если вы находите содержание файла соответствует указанным стилем шаблона, команда ГРЭП по умолчанию, который будет содержать столбцы шаблона стиля отображается. Если не указать любое имя файла, имя файла, или дали "-" команда Grep будет считывать данные со стандартного устройства ввода.

грамматика

grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]

Параметры:

  • -a не --text игнорировать или двоичные данные.
  • -A <Display> Столбцы или --after-контекст = <Display> Столбцы В дополнение к отображению строки в строке вне стиля шаблона, и отображает содержимое столбца позже.
  • -b или --byte смещение перед выводом строки в соответствии со стилями шаблона, а также определить номер строки первой позиции символа.
  • -B <Display> Столбцы или --Перед-контекст = <Display> Столбцы В дополнение к отображению строки в строке вне стиля шаблона, и перед тем отображает содержимое столбца.
  • -c или --count рассчитанный в соответствии с количеством стилей столбцов шаблона.
  • -С <Показать столбцы> или --context = <Показать столбцы> или <-> Показать Столбцы В дополнение к отображению строки в строке вне стиля шаблона и отображает содержимое столбца до после.
  • -d <работает> или --directories = <работает> Если вы хотите, чтобы найти указанный файл является каталогом вместо этого, вы должны использовать этот параметр, в противном случае команда Grep возвратит информацию и остановить действие.
  • -e <стиль шаблона> или --regexp = <шаблон стиля> Найти содержимое файла, указанного шаблона строки стиля.
  • -E Или --extended-регулярное_выражение стиль шаблона для расширения общего обозначения, использованные.
  • -f <файл шаблона> или --file = <файл шаблона> Определяет файл шаблона, содержание которых содержит один или несколько стилей шаблона, поэтому Grep для поиска файлов шаблонов контента, которые соответствуют условиям формата для каждого столбца шаблона стиля.
  • -F Или --fixed-регулярное выражение будет рассматриваться как список шаблонов стиля фиксированных строк.
  • -G Или --Месторасположение---регулярное выражение будет рассматриваться как обычные обозначения шаблона стиля для использования.
  • -h или --no-файла перед отображением строки в соответствии со стилями шаблона, не указывают имя файла столбца принадлежит.
  • -H Или ​​--with-файла перед отображением строки в соответствии со стилями шаблона, имя файла указывает на то, что столбец принадлежит.
  • Отличие -i или --ignore случая игнорировать регистр символов.
  • -l или --file-с-матчей выводит содержимое документов, которые соответствуют указанные имена файлов шаблона стиля.
  • -L Или содержимое списка файлов --files-без-матча не соответствуют указанным имена файлов шаблона стиля.
  • -n или --line номер перед выводом на экран строку в соответствии с шаблоном стиля, отметьте количество столбцов номер столбца.
  • -q или --quiet или нет --silent отображения какой-либо информации.
  • Эффекты и указать -r или --recursive этот параметр совпадает с параметром "-d RECURSE".
  • -s или --no-сообщений не отображается сообщение об ошибке.
  • -v или --revert матча обратный поиск.
  • -V Или --version показать информацию о версии.
  • -w или --word-регулярное выражение отображает только целые слова совпадающие столбцы.
  • -x или отображать --line-регулярное_выражение только те строки, которые соответствуют весь столбец.
  • -y эффект этого параметра и указать "-i" одни и те же параметры.
  • --help интерактивную справку.

Linux команда Daquan Linux команда Daquan

примеров

1, в текущем каталоге, найти суффикс есть "тест" слово файл содержит файл "тест" строки, и распечатать линии строки. В этом случае, вы можете использовать следующую команду:

grep test *file 

Результаты следующие:

$ grep test test* #查找后缀有“test”的文件包含“test”字符串的文件  
testfile1:This a Linux testfile! #列出testfile1 文件中包含test字符的行  
testfile_2:This is a linux testfile! #列出testfile_2 文件中包含test字符的行  
testfile_2:Linux test #列出testfile_2 文件中包含test字符的行 

2, рекурсивно найти квалифицированных файлов. Например, чтобы найти указанный каталог / и т.д. / ACPI и его подкаталогах (если есть подкаталог, то) все файлы, которые содержат файл строку "Обновление", и распечатать содержимое строки в строку, то используется команда:

grep -r update /etc/acpi 

Выход выглядит следующим образом:

$ grep-r update /etc/acpi #以递归的方式查找“etc/acpi”  
#下包含“update”的文件  
/etc/acpi/ac.d/85-anacron.sh:# (Things like the slocate updatedb cause a lot of IO.)  
Rather than  
/etc/acpi/resume.d/85-anacron.sh:# (Things like the slocate updatedb cause a lot of  
IO.) Rather than  
/etc/acpi/events/thinkpad-cmos:action=/usr/sbin/thinkpad-keys--update 

3, обратный поиск. Каждый из предыдущих примеров, чтобы найти и распечатать строки, удовлетворяющие параметром "-v" может распечатать содержимое не соответствуют условиям линии.

Найдите строку, содержащую имя файла не включен в тест испытания, на этот раз, команда:

grep -v test*

Результаты следующие:

$ grep-v test* #查找文件名中包含test 的文件中不包含test 的行  
testfile1:helLinux!  
testfile1:Linis a free Unix-type operating system.  
testfile1:Lin  
testfile_1:HELLO LINUX!  
testfile_1:LINUX IS A FREE UNIX-TYPE OPTERATING SYSTEM.  
testfile_1:THIS IS A LINUX TESTFILE!  
testfile_2:HELLO LINUX!  
testfile_2:Linux is a free unix-type opterating system.