国产成人精品三级麻豆,色综合天天综合高清网,亚洲精品夜夜夜,国产成人综合在线女婷五月99播放,色婷婷色综合激情国产日韩

當(dāng)前位置:首頁 > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 講師博文 > Shellz中awk的簡單用法

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

其實shell腳本的功能常常被低估。在實際應(yīng)用中awk sed 等用法可以為shell提供更為強大的功能。下面我們將一下awk調(diào)用的簡單方法進行了總結(jié)。方便同學(xué)們學(xué)習(xí):

awk的簡單用法:

第一種調(diào)用:

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

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

BEGIN 代表開始輸入文件之前的操作

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

第二種調(diào)用方法:

awk -f test.awk file

test.awk文件的寫法:

#! /usr/bin/awk –f

BEGIN {print “start”; var=1}

{ print $1, $2;

arg=$3; //////可以用分號分開不同的操作。

print arg

}

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

第三種調(diào)用方法:

給test.awk文件添加執(zhí)行權(quán)限: chomd a+x test.awk

./test.awk file

參數(shù)和表達式使用:

1)

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

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

或者使用FS變量

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

2)支持 printf的格式化輸出

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

3) $0代表所有的域

$1代表第一個域

系統(tǒng)變量 FILENAME代表當(dāng)前文件名

系統(tǒng)變量 ARGC代表當(dāng)前傳入?yún)?shù)的個數(shù)

系統(tǒng)變量 ARGV代表當(dāng)前傳入?yún)?shù)的數(shù)組

系統(tǒng)變量 FS 代表字段分割符

系統(tǒng)變量 NF 代表當(dāng)前記錄的域數(shù)量

系統(tǒng)變量 NR 代表當(dāng)前記錄數(shù)

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)可以在shell腳本中使用:

可以方便的將awk獲得值賦值給一個變量。

(1)#!/bin/bash

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

echo $var

(2)#!/bin/bash

var= ` ./$1 $2 `

其中: $1 是帶有執(zhí)行權(quán)限的 test.awk文件

$2 時需要檢索的文件file

運行: ./test.sh test.awk file

上一篇:小封裝濾波電容

下一篇:Logo

熱點文章推薦
華清學(xué)員就業(yè)榜單
高薪學(xué)員經(jīng)驗分享
熱點新聞推薦
前臺專線:010-82525158 企業(yè)培訓(xùn)洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權(quán)所有 ,京ICP備16055225號-5,京公海網(wǎng)安備11010802025203號

回到頂部