Linux_068_awk分隔符

Linux_068_awk分隔符,第1张

awk的分隔符有两种

利用awk取出ip地址信息

ifconfig

ifconfigeth0

ifconfigeth0| awk 'NR==2{print $2}'

使用指定分隔符进行输出

awk -F ":" '{print $1}' file

awk -F ":" '{print $1,$NF}' file

awk -v FS=":" '{print $1,$NF}' file

可以手动输入分隔符

awk -F ":" '{print $1,"--->",$NF}' file

修改OFS

awk -F ":" -v OFS="--->" "{print $1,$NF}" file

使用制表符

awk -F ":" -v OFS="\t""{print $1,$NF}" file

在linux的shell里,${name}可以表示变量,也可以表示数组。name后面加〔〕的,一般是数组,${name[*]}是数组所有元素(alloftheelements)${name[@]}是数组每一个元素(eachoftheelements)其实这两个几乎一样,差别主要在于当加上引号时,"${name[*]}"等于所有数组元素及其分隔符(一般是空格)排成的字符串,而"${name[@]}"仍然表示每一个元素。${#name[*]}是数组元素的个数,也可以写成${#name[@]}${name:-Hello}是指,如果${name}没有赋值,那么它等于Hello,如果赋值了,就保持原值,不用管这个Hello了。至于${name[#*/]},好像没有这种写法,可能是你弄错了。${name[%%*]}也不存在。不过,如果是${name##*}就有意义了,不过是空值。本来可以给你解释一下的,但估计说太多就把你弄糊涂了。如果你真的是在看linux的shell的话,可以在网上找advancebashscriptingguide,有中文版的。

echo $url | cut -d , -f 1

cut是切割命令,-d表示分隔符,这里是逗号,-f表示取第几个,这里是第一个

注意和数组不一样,数组是取第0个。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/9010735.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存