簡単な紹介
グレップ:シンプルなテキストやマッチのために見
sedの:テキストを編集するのに適しました
AWK:フォーマットされたテキストのために、複雑なテキストの書式設定します
1.grep
grepの-help
【オプション】
-c:のみ出力整合ラインを数えます
-i:大文字と小文字を区別しません
-h:複数ファイルのクエリは、ファイル名が表示されません。
-l:場合にのみ、複数ファイルのクエリ出力ファイル名が文字が含まれてい一致
-m:表示整合ラインと行番号
-s:なし、エラー・メッセージが存在しない、またはまったくマッチテキスト
-v:すべての行が一致するテキストが含まれていない表示
-color =自動:あなたは、キーパーツプラスカラーディスプレイを見つけることができます
[パターン]正則化パラメータの意味
\:正規表現の特殊文字の本来の意味を無視
^:マッチする正規表現が始まります
$:正規表現の両端をマッチ
\ <:ラインを起動すると、正規表現に一致します
\>:行の最後に正規表現
[]:EX単一文字[A]、すなわちコンプライアンス
[ - ]:範囲の例:[AC]、すなわちA、B、Cのコンプライアンス
。:すべての単一の文字
*:0にすることができる長さの文字があります。
[用途]マッチは単に現在のフォルダです
テストに含まD列で始まるすべてのファイルを表示するためにはgrep「テスト」D *
grepの 'テスト' 表示ラインAA、BB、CCファイル中のAA、BB、CCマッチング試験
grep「[AZ] \ {5 \}」AAはラインファイルAAに少なくとも5つの連続文字列小文字の文字を構成する各文字列を明らかに
AA「\(ES \)t.8 \ 1 W」grepの一致が西である場合、ESは任意の文字(*)の検索は、これらの後者の文字が(ESに従っ次いで、メモリに格納され、フラグが1である\ 1)、そのライン上に見出さ
egrepのやgrep -E「\」エスケープを使用することなく、
[実施例]複合
grepの-r:検索サブディレクトリ
grepの-dスキップ:サブディレクトリを無視
2.sed
プロセスのテキストファイルにスクリプトを使用します
テキストファイルを編集し、スクリプトの指示に従って処理することができます
主に自動編集一つ以上のファイルに使用され、ファイル操作は、変換手続きの準備を簡素化するために繰り返されます
パラメータ説明]
ファイル-e <スクリプト>または-expression = <スクリプト>オプションは、入力テキストを処理するためにスクリプトで指定された端末のみに表示されています
-i <スクリプト>または-expression = <スクリプト>は、スクリプトで指定されたオプションは、ソースファイルを変更するための入力テキストファイルを処理します
-f <スクリプトファイル>または-file = <スクリプトファイル>スクリプトファイルで指定されたオプションは、入力されたテキストファイルを処理するには
-hまたは-help表示されるヘルプ
-nまたは-quiet -silentまたは処理CRIPTの結果のみを表示します
-vまたは-versionバージョン情報を表示
[動作の説明]
:新しい行に(現在は次の行)の接続文字列の後ろに追加することができ、それらの文字列が表示されます
C:置換された、N1、N2線とを置換することができるバックCストリングに接続されていてもよいです
D:削除、dは通常、何も戻って取ることはありません
I:挿入、私は新しい行に表示されます(現在の行から)文字列、文字列を取り戻すことができます
P:印刷、データの選択を印刷し、通常のパラメータのsed -nで実行
S:置換は、直接、通常、このsのアクションは正規表現を使用することができ、作業を置換することができます。例:1,20s /古い/新しい/グラム
[例]
SED -e \改行テストファイル4行目4aは、新しい文字列を追加します
NL / etc / passwdファイル| sedの「2Iドリンクお茶」passwdと出力回線番号は、ドリンクお茶ライン2の前に挿入されます
NL / etc / passwdファイルは| passwdの「いいえ2-5数2,5c」セッドと行番号2〜5行の概要を交換2-5番号を出力します
される「/ sと/ / gである」sedのテストファイルが置き換えられます
SED「1,3d」テストファイル最初の3行を削除
sedの「」\%豚%dの「行含む豚を削除TESTFILE
削除空白行TESTFILE "/ ^ $ / d" をセッド
sedの-n '5,10p' テストファイルの表示ライン5-10
3.awk
awkは、言語処理テキストファイルである強力な分析ツールです。
-F FSまたは--field区切りFS:入力ファイルが分割FSで区切り、文字列または正規表現、exはある指定:-F:
-v VAR =値またはユーザー定義変数を割り当て--asgin VAR =値
-fスクリプトファイルまたは--fileスクリプトファイルは、スクリプトファイルからコマンドを読み込みます
-mf NNNと-mr NNN NNNに配置された固有の限界値、NNNレコード割当制限-mrブロックの最大数のオプションの最大数を制限する-mfオプション。これらの2つの機能は、AWKのベル研究所バージョンの拡張であるでは適用されません標準のawkは
使用方法[1]
AWK '{[パターン]アクション} {ファイル名}文の行番号が一致AWKは、単一引用符を使用することができ
[例]各行は、スペースまたはタブによって分割されます
行当たりAWK '{$ 4 $ 1印刷} -1,4- log.txtという出力テキスト・アイテム
awkの長さは> 8 'のライン8を見つけるためlog.txtファイルはより大きく、
使用方法[2]
組み込み変数FSのawk -Fと同等、区切り文字を指定
[例]
AWK -F、 'プリント{$ 1、$ 2} log.txtというの使用'、「スプリット
AWK -F '[]「」セパレータ複数の第1分割空間との使用に分割結果を使用してlog.txtというを「{$ 1、$ 2、$ 5印刷}」スプリット
使用[3]
awkの-vセット変数
[例]
AWK -Va = 1 log.txtという変数を提供し、最初の列と最初の列に加え変数Aを印刷するために1の値を割り当て「{$ 1、$ 1 +印刷}」
AWK -Va = 1 -VB = 2の最初の列ABおよびセット二つの変数割り当て、最初の行を印刷し、最初の列に加えて、Bスプライシングを '{$ 1、$ 1 +、$ 1Bを印刷}'
使用[4]
AWK -f {AWKスクリプト} {ファイル名}
[例]
スクリプト実行の使用で書かれたのawk -f cal.awk log.txtというアクションcal.awk
演算子[]
[例]
行の最初の列をフィルタリングすることであるより大きい#2
$ awkの '$ 1> 2' log.txtと
フィルタ#2行1列目に等しいです
$ AWK '$ 1 == 2は、{$ 1、$ 3印刷}' log.txtという
組み込み変数[]
[例]
$ awkは」「{printfの "%4S%4S%4S%4S%4S%4S%4S%4S%4S \ n" は、 "FILENAME"、 "ARGC"、 "FNR"、 "FS"、 "NF" BEGIN NR " "OFS"、 "ORS"、 "RS";のprintf" --------------------------------- ------------する\ n "} {printfの "%4S%4S%4S%4S%4S%4S%4S%4S%4S \ n" は、ファイル名、ARGC、FNR、FS、NF 、NR、OFS、ORS、RS}」log.txtという
FILENAME ARGC FNR FS NF NR OFS ORS RS ----------------------------------------- ----
2 1 5 1のlog.txt
2 2 5 2のlog.txt
LOG.TXT 2 3 3 3
2 4 4 4のlog.txt
$ awkの-F \」「BEGIN {のprintf "%4S%4S%4S%4S%4S%4S%4S%4S%4S \ n" は、 "FILENAME"、 "ARGC"、 "FNR"、 "FS"、」 NF " "NR"、 "OFS"、 "ORS"、 "RS";のprintf" ----------------------------- ---------------- \ n "} {printfの "%4S%4S%4S%4S%4S%4S%4S%4S%4S \ n" は、ファイル名、ARGC、FNR 、FS、NF、NR、OFS、ORS、RS}」log.txtという
FILENAME ARGC FNR FS NF NR OFS ORS RS ----------------------------------------- ----
log.txtという2 1 '1 1
log.txtという2 2 '1 2
log.txtという2 3 '2 3
log.txtという2 4「は1〜4#出力シーケンス番号NR、一致するテキストの行数