位置: 编程技术 - 正文

linux Shell脚本里面把一个数组传递到awk内部进行处理(linux的shell脚本编程)

编辑:rootadmin

推荐整理分享linux Shell脚本里面把一个数组传递到awk内部进行处理(linux的shell脚本编程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux常用shell脚本,linux shell脚本教程,linux shell脚本实例,linux中的shell脚本,linux shell脚本编写实例,linux shell脚本编写实例,linux shell脚本语言,linux中的shell脚本,内容如对您有帮助,希望把文章链接给更多的朋友!

前段时间和几位同事讨论过一个问题:Shell脚本里面怎样把一个数组传递到awk内部进行处理?

当时没有找到方法。前两天在QQ群里讨论awk的时候,无意间又聊起这个话题。机缘巧合之下找到一个思路,特此分享。

测试环境:

众所周知,Shell脚本里面把一个普通变量传递给awk是非常简单的,直接用 -v 参数赋值就行了。

linux Shell脚本里面把一个数组传递到awk内部进行处理(linux的shell脚本编程)

但是,要把一个数组传递给awk就不是那么简单的事情了。请看以下三个试验:

1. 简单的数组可以先赋值后split

2. 有些情况下很难找到合适的分隔符来进行split,因为某个数组元素可能会包含你想用来作为分隔符的那个字符,这时split之后无法得到希望的结果。所以这个方法不够严谨,尤其是当我们无法预测数组元素可能包含哪些字符的时候。

3. 可以借助export命令和awk的ENVIRON默认数组来实现这个功能

我这里只是为了演示功能,所以没有把export变量名的定义和awk内部的字符串匹配写的特别考究,大家可以根据实际情况进行调整(比如添加更多的限制条件等)。

结论:Shell脚本里面把一个数组传递到awk内部进行处理,技术上可行,但不建议在生产环境上使用。

UNIX sh(Bourne Shell)脚本里面使用数组的两种方法 sh不像bash和ksh那样可以非常方便的定义和使用数组,但是可以通过其它方式来模拟数组。【方法1】通过set命令和位置参数来模拟数组#定义数组set'word1'wo

Shell使用Epoch进行日期时间转换和计算的几个小函数 核心代码当你遇到一个date命令不给力的系统时,可以试试这几个小函数。#日期转天数functiondate2days{echo"$*"|awk'{z=int((-$2)/);y=$1+-z;m=$2+*z-3;j=int((*m+

Shell根据日期、月份、星期判断年份的代码 已知三个时间变量:time1="FriAug::"time2="MonSep::"time3="TueSep::"已知这三个时间可以确定是发生在-年,如何快速确定是哪一年呢?希望

标签: linux的shell脚本编程

本文链接地址:https://www.jiuchutong.com/biancheng/371493.html 转载请保留说明!

上一篇:使用shell脚本实现ping对应IP所对应的人名(推荐)(shell脚本-lt)

下一篇:UNIX sh(Bourne Shell)脚本里面使用数组的两种方法

  • 视同销售行为的涉税处理?
  • 流转税率是什么意思
  • 作废的增值税普通发票还可以重新开吗?
  • 缴纳销项税额要交税吗
  • 生活记账技巧
  • 高新技术企业职工人数如何确定
  • 固定资产特性
  • 股权投资损失该如何做账务处理及税前扣除相关规定
  • 企业受托研发产品有哪些
  • 工业企业财务核算方法
  • 财务发票已开但钱未到位怎么处理?
  • 关于销售返利的说法正确的有
  • 税控专用发票和普通发票
  • 自制发票和增值税发票的区别是什么?
  • 关于土地增值税若干问题的通知
  • 没有道路许可证可上营运吗
  • 专项应付款增加记哪方
  • 个人买卖二手房增值税
  • 公司账上没车可以报车辆保险吗
  • 购买原材料并作会计分录
  • 什么叫递延所得税费用?
  • 苹果电脑如何缩小图片大小
  • 股东分红账务处理后报表怎么处理
  • windows10如何开机直接进入桌面
  • 固定资产出售收入属于什么收入
  • 弃置费用预计负债的会计处理
  • 报考中级会计的工作证明
  • 收入记借方
  • 如果工资少发怎么办
  • 失业保险稳岗补贴是给个人的还是给企业的
  • 成立公司必要性
  • 对视同销售行为应如何进行税务处理
  • 股权转让要交什么税举例
  • 应付票据核算的票据包括
  • 商业企业积分赠商品如何计算企业所得税
  • php缓存技术和静态化
  • phpemail正则
  • 深入理解php中的数字
  • php一个文件搞定两个文件
  • 保姆分为哪些级别
  • tokenall
  • 专票退税是什么意思
  • docker运行多个镜像
  • open api平台
  • 最强大的人工智能武器
  • dos命令怎么转到d盘
  • 增值税发票认证结果通知书在哪里打印
  • 物权转移手续是什么
  • 100万的工程怎么开发票
  • 如何查看简易征信报告
  • python的多线程 吃cpu太厉害
  • 医疗报销发票是什么样的
  • 财政总预算会计的特点
  • 劳务派遣的开票税点是多少
  • 资产负债表可以反映的具体信息有
  • 无票收入怎么计算
  • 公司名下汽车过户个人需要补税吗
  • 企业从银行取得短期贷款存入银行,属于( )类型变化业务
  • 事业单位如何计算退休工资
  • 支付职工培训费是什么科目
  • 报名费无发票要补交吗
  • 企业软件开发哪家好
  • windows使用痕迹是指是什么
  • mysql解压版怎么使用
  • YunDetectService.exe是什么进程?YunDetectService.exe禁止使用的方法
  • win8连接网络
  • fedora 10
  • centos安装owncloud
  • centos5.4 安装
  • 用win7的人多吗
  • qtzgacer.exe - qtzgacer进程是什么文件 .作用是什么
  • 电脑xp系统备份
  • 获取windows的最新信息
  • dos判断变量是否为空
  • jQuery webuploader分片上传大文件
  • python动态加载py
  • 常见的java数据类型有哪些
  • 重庆市国税网官方网站
  • 如何当好一名税务局长
  • 电子税务局怎么删除办税员
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设