tft每日頭條

 > 生活

 > linux中的awk命令詳解

linux中的awk命令詳解

生活 更新时间:2024-11-25 18:16:17

Linux三劍客awk命令篇五:引用shell變量的幾種方式

關于awk的原理等基本知識請參考上四篇:

Linux三劍客awk命令篇一之原理及基本命令

Linux三劍客awk命令篇二之命令操作符

Linux三劍客awk命令篇三之内部變量

Linux三劍客awk命令篇四之流程控制語句

編寫shell腳本時,經常會使用到awk程序。

但是有些複雜的邏輯,可能需要在awk中使用在shell中定義的變量,而且awk程序處理之後,産生的中間變量,還需要在shell中繼續處理。

下面我們就來簡單談一下引用shell變量的方式。

方式1、使用awk -v選項

案例:

#!/bin/bash

#在awk中引用shell變量

#auth:odysee

name=odysee

#這裡的$name的目的就是證明在awk中不能直接引用shell變量

awk -v cname=$name 'BEGIN{print cname,$name}'

linux中的awk命令詳解(Linux三劍客awk命令篇五)1

這裡是通過cname變量間接的接受shell變量$name的值

執行腳本

linux中的awk命令詳解(Linux三劍客awk命令篇五)2

方式2、使用"'$name'"

注意是"雙引号 單引号 shell變量 單引号 雙引号"的格式

案例:

#!/bin/bash

#在awk中引用shell變量

#auth:odysee

name="odysee"

awk 'BEGIN{print "'$name'"}'

~

linux中的awk命令詳解(Linux三劍客awk命令篇五)3

執行腳本

linux中的awk命令詳解(Linux三劍客awk命令篇五)4

方式3:"'"$var"'"

注意是"雙引号 單引号 雙引号 shell變量 雙引号 單引号 雙引号"的格式。

補充:

變量的值中包含空格,為了shell不把空格作為分隔符,則應使用方法3。

案例:

#!/bin/bash

#在awk中引用shell變量

#auth:odysee

name="odysee"

awk 'BEGIN{print "'"$name"'"}'

linux中的awk命令詳解(Linux三劍客awk命令篇五)5

執行腳本

linux中的awk命令詳解(Linux三劍客awk命令篇五)6

補充:

關于引用shell中的位置變量

linux中的awk命令詳解(Linux三劍客awk命令篇五)7

執行腳本

linux中的awk命令詳解(Linux三劍客awk命令篇五)8

以上三種方式推薦給大家。

下一篇:

Linux三劍客awk命令補充篇,案例分析

歡迎大家給予寶貴的意見或者建議。

歡迎大家補充或者共享一些其他的方法。

感謝支持。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved