grep

GNU grep
Тип стандартна утиліта UNIX[d]
Автор Кен Томпсон
Розробник UNIX
Перший випуск листопад 1974; 49 років тому (1974-11)
Стабільний випуск 2.15 (26 жовтня 2013; 10 років тому (2013-10-26), GNU)
Платформа IA-32, x86-64, PowerPC та інші
Операційна система Linux, Mac OS, Solaris та Microsoft Windows
Доступні мови англійська та інші
Стан розробки активний

grep — утиліта інтерфейсу командного рядка, яка знаходить на вводі рядки, що відповідають заданому регулярному виразу, і виводить їх. Назва утиліти є послідовністю команд пошуку регулярних виразів у редакторі ed — g/re/p. Цю послідовність команд можна описати англійською фразою «search globally for lines matching the regular expression, and print them» — «шукати скрізь рядків, відповідних регулярному виразу, і виводити їх».

Спочатку була створена для операційної системи UNIX.

Існують модифікації grep:

  • egrep (з обробкою розширених регулярних виразів),
  • fgrep (що тлумачить символи $*[]^|()\ буквально),
  • rgrep (з включеним рекурсивним пошуком).

Згідно з документацією man: «egrep те ж саме що grep -E. fgrep те ж саме що grep -F. rgrep те ж саме що grep -r».

Синтаксис[ред. | ред. код]

grep "регулярний вираз" "файл" 

або

 cat "файл" | grep "регулярний вираз" 

Приклад: вивести з файлу «words.txt» всі рядки, що починаються з букви «a»

 grep "^a" "words.txt" 

Приклад: з результату команди uptime вивести тільки завантаження системи зручно для запису у файл

 uptime | grep -o "load average.*" 

Приклад: проглядання конфігураційних файлів без коментаря і порожніх рядків:

cat /usr/src/sys/i386/conf/GENERIC | grep -v '^#' | sed '/^$/d' | more cpu             I486_CPU cpu             I586_CPU cpu             I686_CPU ident           GENERIC makeoptions     DEBUG=-g                # Build kernel with gdb(1) debug symbols options         SCHED_4BSD              # 4BSD scheduler options         PREEMPTION              # Enable kernel thread preemption options         INET                    # InterNETworking options         INET6                   # IPv6 communications protocols options         SCTP                    # Stream Control Transmission Protocol options         FFS                     # Berkeley Fast Filesystem options         SOFTUPDATES             # Enable FFS soft updates support options         UFS_ACL                 # Support for access control lists 

Див. також[ред. | ред. код]

Посилання[ред. | ред. код]