このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
Linuxコマンド演習39

以下のコマンドの演習を行います。
実際にコマンド操作を行いながら、Linuxの操作に慣れていきましょう。
演習01:「www」という文字列を含む行を検索
・'/etc/services' ファイル内の行で「www」という文字列を含む行を検索します。
$ grep www /etc/services
# http://www.iana.org/assignments/port-numbers
http 80/tcp www www-http # WorldWideWeb HTTP
http 80/udp www www-http # HyperText Transfer Protocol
www-ldap-gw 1760/tcp # www-ldap-gw
www-ldap-gw 1760/udp # www-ldap-gw
www-dev 2784/tcp # world wide web - development
www-dev 2784/udp # world wide web - development
flirtmitmir 3840/tcp # www.FlirtMitMir.de
flirtmitmir 3840/udp # www.FlirtMitMir.de
演習02:大文字小文字を区別せずに「www」という文字列を含む行を検索
-i オプションを使用して、大文字小文字を区別せずに `/etc/services' ファイルから「www」という文字列を含む行を検索します。
$ grep -i www /etc/services
# http://www.iana.org/assignments/port-numbers
http 80/tcp www www-http # WorldWideWeb HTTP
http 80/udp www www-http # HyperText Transfer Protocol
webcache 8080/tcp http-alt # WWW caching service
webcache 8080/udp http-alt # WWW caching service
www-ldap-gw 1760/tcp # www-ldap-gw
www-ldap-gw 1760/udp # www-ldap-gw
www-dev 2784/tcp # world wide web - development
www-dev 2784/udp # world wide web - development
flirtmitmir 3840/tcp # www.FlirtMitMir.de
flirtmitmir 3840/udp # www.FlirtMitMir.de
演習03: '/etc/passwd' ファイルからユーザー名が「taro」という行を検索
・'/etc/passwd' ファイルからユーザー名が「taro」という行を検索します。
$ grep taro /etc/passwd
taro:x:1001:1001::/home/taro:/bin/bash
演習04:検索するファイルを複数指定した検索
・メタキャラクタ「*」を指定して複数のファイルから文字列「bash」が含まれる行を検索します。
$ ls -l /etc/default/*
-rw-r--r--. 1 root root 279 1月 3 11:52 /etc/default/grub
-rw-r--r--. 1 root root 1756 5月 19 2022 /etc/default/nss
-rw-r--r--. 1 root root 119 8月 6 2019 /etc/default/useradd
$ grep bash /etc/default/*
/etc/default/useradd:SHELL=/bin/bash
演習05:grepを使った絞り込み検索
・grepを使った絞り込み検索を行います。
locateコマンドの出力をgrepコマンドにパイプします。grepコマンドでは、行頭に「/etc」にマッチするものだけに絞り込みます。
$ locate hosts | grep '^/etc'
/etc/ghostscript
/etc/hosts
/etc/hosts.allow
/etc/hosts.deny
/etc/avahi/hosts
/etc/samba/lmhosts