久久婷婷香蕉热狠狠综合,精品无码国产自产拍在线观看蜜,寡妇房东在做爰3,中文字幕日本人妻久久久免费,国产成人精品三上悠亚久久

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 講師博文 > Shellz中(zhong)awk的(de)簡單(dan)用法

Shellz中awk的簡單用法 時間:2018-09-21      來源:未(wei)知

其實shell腳(jiao)本的功能常常被低估。在實際應用(yong)中awk sed 等用(yong)法可以(yi)為(wei)shell提供更為(wei)強(qiang)大的功能。下面我(wo)們將一下awk調(diao)用(yong)的簡單方法進行了(le)總結。方便(bian)同學們學習:

awk的簡單用法:

第一種調用:

awk ‘BEGIN {print “start”;var=1} {print $1, $2} END{var=$3}’file

使用單引號括起(qi)awk的命令,{ }代表不同的動作(zuo)中間的代碼段(紅色部分):在執(zhi)行(xing)每(mei)一條記錄時都會執(zhi)行(xing)。

BEGIN 代表開始(shi)輸入文件之前(qian)的操(cao)作

END 代(dai)表(biao)輸入文件結束之后的操作

第二(er)種調(diao)用方法:

awk -f test.awk file

test.awk文件(jian)的寫(xie)法:

#! /usr/bin/awk –f

BEGIN {print “start”; var=1}

{ print $1, $2;

arg=$3; //////可以用分(fen)號分(fen)開(kai)不(bu)同(tong)的(de)操作(zuo)。

print arg

}

END {printf(“the test is over\n”}

第三種調(diao)用方(fang)法(fa):

給test.awk文(wen)件添(tian)加執(zhi)行權限: chomd a+x test.awk

./test.awk file

參數和表達式使用:

1)

-F “:” 代表域的分割符是 冒號。

awk -F “:” ‘{print $1, $2}’ file

或者使用FS變(bian)量

awk ‘BEGIN{FS=”:”; var=2} {print $1, $2} ‘ file

2)支(zhi)持 printf的(de)格(ge)式化輸出

awk -F “:” ‘{printf(“%d, %d\n”, $1, $2}’ file

3) $0代表所(suo)有的域

$1代表(biao)第(di)一個域

系統變量 FILENAME代表當前文件名

系統變量 ARGC代表(biao)當(dang)前傳入參數的個數

系統變量(liang) ARGV代表當(dang)前傳入參數的(de)數組

系統變量 FS 代表字段分割符

系統變量(liang) NF 代(dai)表當(dang)前記錄的域數(shu)量(liang)

系統(tong)變量 NR 代表當前(qian)記錄數(shu)

print NR;print NF;

4)支持if else 語句。

{

If ($2 >= 0)

{ print “$2 is >= 0”;

print “$2 is greate 0”

}

else

{

print “$2 is < 0”;

print “$2 is < 0”

}

}

5)可(ke)以在shell腳(jiao)本中使用:

可以方(fang)便的(de)將(jiang)awk獲得值(zhi)賦值(zhi)給一(yi)個(ge)變量。

(1)#!/bin/bash

var=` grep -e “\” file |awk -F “:” ‘print $2’ `

echo $var

(2)#!/bin/bash

var= ` ./$1 $2 `

其中: $1 是帶有執行權限的 test.awk文件

$2 時需(xu)要檢索的文件file

運(yun)行: ./test.sh test.awk file

上一篇:小封裝濾波電容

下一篇:Logo

熱(re)點(dian)文章推薦
華(hua)清學(xue)員就業榜單
高薪學員經(jing)驗分享
熱(re)點新聞推薦
前臺專線(xian):010-82525158 企業(ye)培訓洽談專線:010-82525379 院(yuan)校合作洽談(tan)專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,,京公海網安備11010802025203號

回到頂部