grepの紹介
grepは、正規表現を使用してテキストを検索し、一致する行を出力できる強力なテキスト検索ツールです。通常、grep には grep、egrep (grep -E と同等)、fgrep の 3 つのバージョンがあります。 egrep は拡張 grep で、fgrep は高速 grep (テキストを検索するための固定文字列、正規表現参照はサポートしていませんが、クエリは非常に高速です) です。 grep は Linux テキスト処理の三銃士の 1 つです。
grepの使い方
使い方: grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]
共通オプション:
- -color=auto: 一致したテキストに色を付けて強調表示します
-i: 文字の大文字と小文字を無視します
-o: 一致した文字列のみを表示します
-v: パターンで一致しない文字列を表示します
-E: 拡張正規表現の使用をサポートします
-q: サイレントモード、つまり情報が出力されません
-A #: パターンに一致した行とそれに続く # 行を表示します
-B #:パターンに一致した行とその前後 # 行を表示します
-C #: パターンに一致した行と前後 # 行を表示します
注: grep マッチングを使用する場合は、double を使用する必要があります引用符 (一重引用符は強力です) 参照) を使用して、システムがパラメーターまたは特殊なコマンドと誤ってエラーを報告するのを防ぎます。
拡張 grep 使用法
使用法: egrep [OPTIONS] PATTERN [FILE...]
grep -E [OPTIONS] PATTERN [FILE...]
-i: 文字サイズを無視します。
-o: 一致した文字列そのもののみを表示します
-v: パターンと一致しない行を表示します
-q: サイレントモード、つまり情報は出力されません
-A #: パターンとその-B で一致した行を表示します#: パターンと一致した行と前後 # 行を表示 -C #: パターンと一致した行と前後 # 行を表示
-G: 基本的な正規表現をサポート
grep 正規表現 数式文字
'^': 行頭のアンカー
'$': 行末のアンカー
'.': 任意の 1 文字と一致
'*': 0 個以上の前の文字と一致
' ?': 前の文字と 0 回または 1 回一致します;
'+': 前の文字と 1 回以上一致します。 m,n}': 前の文字と少なくとも m 回、最大で n 回一致します。 '[]': 指定された範囲内の文字と一致します。 '[^]' 指定された範囲外の文字と一致します。
の任意の 1 文字 | '' または 'b': 単語の末尾をアンカー (利用可能
'()':複数の文字を全体として扱います
後方参照: 前のグループ括弧内のパターンと一致する文字を参照します グループ括弧内のパターンと一致するコンテンツは、正規表現エンジンによって自動的に記録される場合があります内部変数:
1: パターンは左から始まり、コンテンツは最初の左括弧と一致する右括弧の間のパターンと一致します
2: パターンは左から始まり、最初のコンテンツは一致しました2 つの左括弧と対応する右括弧の間のパターンによって...
拡張正規表現は正規表現とは少し異なります:
'[]': 指定された範囲に一致します。多くの特別なマッチング方法。 [:digit:] は任意の 1 桁の数字と一致します
[: lower:] は任意の 1 つの小文字と一致します [:alnum:] は任意の 1 つの文字または数字と一致します
[: punct:] は単一の記号に一致します
[:space:] は単一のスペースに一致します
いくつかの場所でエスケープ文字の使用がキャンセルされました: '?': その前の文字を 0 回または 1 回一致させます
; '+': 前の文字と 1 回以上一致します
'{m}': 前の文字と m 回一致します (エスケープ文字の場合)
'{m,n}': 少なくとも前の文字と一致しますm 回、最大でも n 回
(): 1 つ以上の文字を束ねて全体として処理し、通常どおり後方参照が使用されます。
|': or (
注: 'C|cat' is C and cat, '(C|c)at is Cat and cat')
練習問題:
1. 現在のシステム上の数値を列挙してくださいログインしているすべてのユーザーのユーザー名 注: 同じユーザーが複数回ログインした場合、表示されるのは 1 回だけです
[root@localhost ~]# who | cut -d' ' -f1|uniqroot2. 現在のシステムに最後にログインしたユーザーの関連情報を取り出します。
[root@localhost ~]# id `last | head -1 | cut -d' ' -f1`
uid=0(root) gid=0(root) groups=0(root)
3. 現在のシステムでほとんどのユーザーがデフォルトのシェルとみなしているシェルを取り出します
[root@localhost ~]# cut -d':' -f7 /etc/passwd|uniq -c|sort -n|tail -1|cut -d' ' -f7/sbin/nologin
4.将/etc/passd中的第三个字段设置最大的后10个用户的信息全部改为大写保存至/tmp/maxuser.txt文件中
[root@localhost ~]# sort -t':' -k3 -n /etc/passwd|tail -10|tr 'a-z' 'A-Z' >/tmp/maxusers.txt [root@localhost ~]# cat /tmp/maxusers.txt NOBODY:X:99:99:NOBODY:/:/SBIN/NOLOGIN SYSTEMD-NETWORK:X:192:192:SYSTEMD NETWORK MANAGEMENT:/:/SBIN/NOLOGIN NGINX:X:996:994:NGINX WEB SERVER:/VAR/LIB/NGINX:/SBIN/NOLOGIN CHRONY:X:997:995::/VAR/LIB/CHRONY:/SBIN/NOLOGIN POLKITD:X:998:996:USER FOR POLKITD:/:/SBIN/NOLOGIN SYSTEMD-BUS-PROXY:X:999:997:SYSTEMD BUS PROXY:/:/SBIN/NOLOGIN DINGJIE:X:1000:1000:DINGJIE:/HOME/DINGJIE:/BIN/BASH JEFF:X:1001:1024:WOSHIDASHUAIBI:/HOME/JEFF:/BIN/BASH EGON:X:1002:1002::/HOME/EGON:/BIN/BASH NFSNOBODY:X:65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN
5.取出当前主机的IP地址
[root@localhost ~]# ifconfig | egrep "inet.*broadcast.*"|cut -d' ' -f10192.168.0.133
6.列出/etc目录下所有已.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中
[root@localhost ~]# find /etc -name '*.conf' | egrep -o "[^/]*(\.conf)$"|tr 'a-z' 'A-Z' >/tmp/etc.conf [root@localhost ~]# cat /tmp/etc.conf RESOLV.CONF CA-LEGACY.CONF FASTESTMIRROR.CONF LANGPACKS.CONF SYSTEMD.CONF VERSION-GROUPS.CONF LVM.CONF LVMLOCAL.CONF ASOUND.CONF LDAP.CONF MLX4.CONF RDMA.CONF SMTPD.CONF
7.显示/var目录下一级子目录或文件的总数
[root@localhost ~]# ls /var | wc -l21
8.取出/etc/group第三个字段数值最小的10个组的名字
[root@localhost ~]# sort -t: -k3 -n /etc/group|head -10 |cut -d':' -f1 root bin daemon sys adm tty disklpmem kmem
9.将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中
[root@localhost ~]# cat /etc/fstab /etc/issue > /tmp/etc.test [root@localhost ~]# cat /tmp/etc.test # # /etc/fstab # Created by anaconda on Sat May 13 10:12:58 2017# # Accessible filesystems, by reference, are maintained under '/dev/disk'# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info#/dev/mapper/cl-root / xfs defaults 0 0UUID=2789d01a-4e2b-47a5-9c3c-537641648663 /boot xfs defaults 0 0/dev/mapper/cl-swap swap swap defaults 0 0\S Kernel \r on an \m
对于正则表达式的使用需要多联系加强记忆,否则是用不好正则表达式的,在学习过程中切记多写多背。
以上がLinuxのgrepと正規表現に関するコード事例を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

この記事では、DebianシステムのHadoopデータ処理効率を改善する方法について説明します。最適化戦略では、ハードウェアのアップグレード、オペレーティングシステムパラメーターの調整、Hadoop構成の変更、および効率的なアルゴリズムとツールの使用をカバーしています。 1.ハードウェアリソースの強化により、すべてのノードが一貫したハードウェア構成、特にCPU、メモリ、ネットワーク機器のパフォーマンスに注意を払うことが保証されます。高性能ハードウェアコンポーネントを選択することは、全体的な処理速度を改善するために不可欠です。 2。オペレーティングシステムチューニングファイル記述子とネットワーク接続:/etc/security/limits.confファイルを変更して、システムによって同時に開くことができるファイル記述子とネットワーク接続の上限を増やします。 JVMパラメーター調整:Hadoop-env.shファイルで調整します

このガイドでは、Debian SystemsでSyslogの使用方法を学ぶように導きます。 Syslogは、ロギングシステムとアプリケーションログメッセージのLinuxシステムの重要なサービスです。管理者がシステムアクティビティを監視および分析して、問題を迅速に特定および解決するのに役立ちます。 1. syslogの基本的な知識Syslogのコア関数には以下が含まれます。複数のログ出力形式とターゲットの場所(ファイルやネットワークなど)をサポートします。リアルタイムのログ表示およびフィルタリング機能を提供します。 2。syslog(rsyslogを使用)をインストールして構成するDebianシステムは、デフォルトでrsyslogを使用します。次のコマンドでインストールできます:sudoaptupdatesud

Debianシステムに適したHadoopバージョンを選択する場合、次の重要な要因を考慮する必要があります。1。安定性と長期的なサポート:安定性とセキュリティを追求するユーザーにとって、Debian11(Bullseye)などのDebianの安定したバージョンを選択することをお勧めします。このバージョンは完全にテストされており、最大5年のサポートサイクルがあり、システムの安定した動作を確保できます。 2。パッケージの更新速度:最新のHadoop機能と機能を使用する必要がある場合は、DebianのUnstableバージョン(SID)を検討できます。ただし、不安定なバージョンには互換性の問題と安定性のリスクがあることに注意する必要があります。 3。コミュニティのサポートとリソース:Debianには、豊富なドキュメントを提供できるコミュニティサポートが大きくなり、

この記事では、Tigervncを使用してDebian Systemsでファイルを共有する方法について説明します。最初にtigervncサーバーをインストールしてから構成する必要があります。 1. TigerVNCサーバーをインストールし、端末を開きます。ソフトウェアパッケージリストの更新リスト:sudoaptupdate tigervnc server:sudoaptinstaltaltigervnc-standalone-servertigervnc-common2。tigervncサーバーを構成するVNCサーバーパスワードを設定します。

Debian Mail Serverのファイアウォールの構成は、サーバーのセキュリティを確保するための重要なステップです。以下は、iPtablesやFirewalldの使用を含む、一般的に使用されるファイアウォール構成方法です。 iPtablesを使用してファイアウォールを構成してIPTablesをインストールします(まだインストールされていない場合):sudoapt-getupdatesudoapt-getinstalliptablesview現在のiptablesルール:sudoiptables-l configuration

Debian Mail ServerにSSL証明書をインストールする手順は次のとおりです。1。最初にOpenSSL Toolkitをインストールすると、OpenSSLツールキットがシステムに既にインストールされていることを確認してください。インストールされていない場合は、次のコマンドを使用してインストールできます。sudoapt-getUpdatesudoapt-getInstalopenssl2。秘密キーと証明書のリクエストを生成次に、OpenSSLを使用して2048ビットRSA秘密キーと証明書リクエスト(CSR)を生成します:Openss

Debianシステムでのメールサーバーの仮想ホストの構成には、通常、Apache Httpserverではなく、Apache Httpserverではなく、Mail Serverソフトウェア(Postfix、Eximなど)のインストールと構成が含まれます。以下は、メールサーバーの構成のための基本的な手順です仮想ホスト:ポストフィックスメールサーバー更新システムパッケージ:sudoaptupdatesudoaptupgradeポストフィックス:sudoapt

Debian Mail ServerのDNS設定を構成するには、次の手順に従うことができます。ネットワーク構成ファイルを開きます。テキストエディター(VIやNANOなど)を使用して、ネットワーク構成ファイル/など/ネットワーク/インターフェイスを開きます。 sudonano/etc/network/interfacesネットワークインターフェイス構成を検索:構成ファイルで変更するネットワークインターフェイスを見つけます。通常、イーサネットインターフェイスの構成はIFETH0ブロックにあります。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)
