当前位置: 首页 > news >正文

ai国外教程网站有电脑网站怎样建手机

ai国外教程网站,有电脑网站怎样建手机,金融保险网站模板,上传网站模板建站awk是Linux中一款非常好用的程序,可以逐行处理文件,并提供了强大的语法和函数,和grep、sed一起被称为“Linux三剑客”。 在使用awk处理文件时,有时会用到shell中定义的变量,由于在shell中变量的调用方式是通过$符号进…

awk是Linux中一款非常好用的程序,可以逐行处理文件,并提供了强大的语法和函数,和grepsed一起被称为“Linux三剑客”。

在使用awk处理文件时,有时会用到shell中定义的变量,由于在shell中变量的调用方式是通过$符号进行的,而在awk$符号有特殊的含义,它可以表示待处理文件的某一列,也可以表示所有列(即$0),因此不能在awk中通过$符号调用shell变量。

下面来介绍两种在awk中调用shell变量的方式。

方式1:通过双引号加单引号的方式

语法规则:在变量两边加入双引号和单引号,即 "'$var'" 的形式

示例命令如下:

var1="shell"
var2="python"awk 'BEGIN {print "'$var1'"; print "'$var2'"}'# 输出结果
# shell
# python

这里用到了awkBEGIN语句(即BEGIN { }),它是awk程序在没有读取任何数据之前最先执行的语句。

此外这种调用shell变量的方式也可以用在awk后面接文件输入时,如下所示:

echo -e "hello\nhi" > a.txtvar1="shell"
var2="python"awk '{print $0", ""'$var1'"" and ""'$var2'"}' a.txt # 这里$0表示文件a.txt的整行
# $0和后面 "'$var1'" 之间的 ", " 是字符串连接方式,它允许将多个变量连接成一个字符串# 输出结果
# hello, shell and python
# hi, shell and python

不难发现,这种调用方式会在awk命令中引入很多的双引号和单引号,当命令较多时就会产生混淆,可读性非常差,容易出现问题。下面介绍一种可读性更好的调用shell变量的方式。

方式2:通过-v参数将shell变量转为awk变量

awk非常强大,它允许用户自定义变量,如下面的代码:

awk 'BEGIN {var="hello"; print var}'# 输出结果
# hello

上述命令变量var进行了赋值,然后打印了变量var的值。

此外awk提供了一个-v参数,可以来对awk中的变量进行赋值,示例代码如下:

awk -v var="hello" 'BEGIN {print var}'# 输出结果
# hello

在上述命令中,通过-v参数在awk中给变量var赋值为了”hello”字符串,然后就可以在awk中直接调用var变量,最终打印结果为”hello”。

因此可以结合-v参数来将shell变量赋值为awk变量,然后在awk中就可以直接使用shell变量的值了,示例代码如下:

var1="shell"
var2="python"awk -v a="$var1" -v b="$var2" 'BEGIN{print "a is "a, "\nb is "b}'# 输出结果
# a is shell 
# b is python

需要注意的是,-v参数必须在BEGIN语句的前面才能发挥作用!

上述用法也可以用在awk处理文件时,如下:

awk -v a="$var1" -v b="$var2" '{print "a is "a, "\nb is "b}' a.txt

总结

本文介绍了两种在awk中使用shell变量的方式:

方式1:awk 'BEGIN {print "'$var1'"; print "'$var2'"}'

方式2:awk -v a="$var1" -v b="$var2" 'BEGIN{print a; print b}'

本文参考链接:

  • https://www.gnu.org/software/gawk/manual/gawk.html
  • https://fedingo.com/how-to-use-shell-variables-in-awk-script/
http://www.yayakq.cn/news/920682/

相关文章:

  • 网站编辑器哪个好集团品牌网站建设
  • 手机欧美视频网站模板下载 迅雷下载 迅雷下载地址网站建设的模板
  • 加强网站的建设工作wordpress wp content
  • 做网站都需要什么工具wordpress忘记了密码
  • 东莞常平做网站公司制作app的专业公司
  • 滴滴优惠券网站怎么做微信开放平台介绍
  • 南通网站建设系统方案wordpress在线编辑慢
  • 如何做网站热力图电商网站建设实验心得
  • 建筑网站翻译编辑做设计常用网站有哪些
  • 网站建设开发招标书建设银行 贷款 查询 网站
  • 企业公司网站管理系统做摄影和后期的兼职网站
  • 域名解析网站打不开网站建设的职称
  • 外国网站英语要求WordPress图片加密
  • 网站用什么开发深圳乐安居网站谁做的
  • 在阿里巴巴网站上怎么做贸易服饰网站建设规划书
  • 如何用源码搭建网站源码宝安中心医院入职体检多少钱
  • 变性人做网站代刷网站推广链接0元价格
  • 自己怎么制作网站学设计多少钱
  • 网站内部链接优化培训心得体会100字
  • 网站数据库有什么用游戏源码
  • 如何做电子书下载网站域名和网站建站公司链接
  • 太原网站运营优化装修公司找哪家比较好
  • dede怎么做视频网站保山专业的网站建设
  • 肃宁做网站价格做哪个软件网站app
  • 做网站毕业答辩会问什么qq人脸解冻自助网站
  • 苏州北京网站建设win8 metro风格网站后台管理模板
  • 网站企业制作云端视差wordpress企业主题破解版
  • 免费推广网站大全免费个人网站注册方法
  • 做网站用什么语言比较简单设计师网站知乎
  • 农产品网站建设方案域名值多少钱