(VIII)awkコマンド

A:printfのフォーマットされた出力

%Ns個:出力文字列。nが出力いくつかの文字を参照するための番号であります

%のNi:整数出力。Nは、いくつかのデジタル出力を参照する数であります

%M.nf:浮動小数点出力。mおよびnは数値、整数桁と世代出力の小数点以下の桁です。%の8.2fとして、

代表的な共通出力8ビット、2ビットは小数、6である整数です。

スプリット、SUBSTR、strlen関数

出力フォーマット:

\ A:出力警告音

\ B:Backspaceキーは、出力バックスペースキー、

\ F:クリアスクリーン

\ N:ラインフィード

\ R:入力し、Enterキーがあります

\ T:Tabキーがある水平出力バックスペースキー、

\ V:垂直出力バックスペースキー、Tabキーがあります

printf関数 '%s' は$(猫student.txt)

printf関数 '%sの\トン%sの\トン%sの\トン%sの\トン%sの\トン%sの\トン\ n' は$(猫student.txt)

3:基本的な使用をawkは

awkの{アクション1つの条件1つの条件2} {2} ...操作 'ファイル名

条件(Pattern):

関係式は、一般的に条件として使用されています。関係式は、例えば、特に、表12-3を参照して、非常に大きいです。

変数xが10よりも大きいか否かを、X> 10判定する

x == yは変数xが変数yに等しいか否かを判断します

〜Bは、文字列は、AがBの表現にマッチする部分文字列が含まれているかどうかを決定します

!A〜Bは、部分文字列が含まれていない文字列がBの発現と一致するか否かを判定する

 

(1)出力フォーマットのawk

awkの '{printfの$ 1 "\ n" は}' student.txt

printf関数 '%s' は$(猫student.txt)

AWK '{printfの$ 2 "\ T" $ 6 "\ n"}' student.txt

#の2行目の出力と第6列

 

 

 

同級生の90名の(2)の条件の印刷出力画分」

grep -v "名前" student.txt | AWK '> = 90 $ {4のprintf $ 2 "\ n"}

 

(3)awkの実行

1:条件がBEGIN場合、定義された最初の実行アクションがBEGIN

2:なし条件は最初の行に読み込まれていない場合、データを順次の最初の行は$ 0、$ 1、$ 2つの変数に割り当て始めます。全体の旅行を表すデータは、$ 1は最初のフィールドを表す$ 0、$ 2は、第2のフィールドを表します。

3:操作を実行するかどうかの条件に基づいて判断を入力します。条件が満たされた場合は、アクションを実行、またはデータの次の行を読んで。条件がない場合は、各行がアクションを実行します。

図1は、上記の手順を繰り返し、データの次の行を読み取ります。

 

4:AWK組み込み変数

$ 1は、第1の列、などを表し、

$ 0がデータの行全体が現在読まれているAWK表します。私たちは、$ 0は、データの行全体が現在の行に読み込まれる表し、awkには、ラインによって、データラインに読み込まれている知っています。

$ Nは、現在の行に読み込まn番目のフィールドを表します。

フィールド所有(カラム)NF全電流ライン。

NR AWK現在処理行、合計データの最初の数行。

FSのユーザー定義の区切り文字。AWKのデフォルトの区切り文字は任意のスペースであるあなたが(のような「:」)他の区切り文字を使用したい場合は、あなたが変数FSを定義する必要があります。

例:FSのユーザー定義されたビューの区切り

猫/ etc / passwdファイル| grepの "/ binに/ bashの" | awkの:{のprintf $ 1 "\トンの\ nを"}、{ "" FS =} BEGIN "

おすすめ

転載: www.cnblogs.com/love-life-insist/p/11668790.html