位置: 编程技术 - 正文

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)脚本里面使用数组的两种方法

  • 城建税会计分录怎么写
  • 机械租赁适用税率
  • 税后净营业利润英文
  • 企业所得税纳税人
  • 银行共管账户现在可以开设吗
  • 个体户缴纳经营所得个税怎么算的
  • 销项减进项余额在哪方
  • 审计报告报备
  • 已经认证的发票可以作废吗
  • 发票确认平台勾选步骤
  • 交易性金融资产借贷方向
  • 跨年发票是否可以报销 审计
  • 手续费及佣金收入
  • 产品缺陷处理流程
  • 仲裁调解书赔偿多少钱
  • 跨年多计提社保个人部分怎么调整
  • 公司欠增值税如何补交?
  • 海关增值税抵扣是全额抵扣所得税
  • 房地产开发成本占比
  • 营改增后餐饮业税种
  • 车船使用税凭证还要过户吗怎么办
  • 财务费用中的利息收入指什么
  • 防洪保安基金应用范围
  • 汇算清缴发票可以做费用票吗
  • 向承兑人提示付款
  • 电子普票开具的最新文件
  • 企业所得税以前年度亏损怎么弥补
  • 什么是租赁公司的主营业务
  • 黄金入账怎么做会计分录
  • 历史时间线怎么写
  • php版本升级
  • php字符串变量
  • php数组函数题目
  • php基本操作
  • 支付手续费委托代销是什么意思
  • oss对象储存的副本储存原则
  • 什么情况下个人需缴纳房产税
  • 萤火虫发光器的用途
  • 贷方跟借方哪个是收入哪个是支出
  • thinkphp框架入门
  • php7.3
  • flutter项目怎么运行
  • chkconfig命令参数
  • 职工食堂费用计入什么科目
  • 往来款会计
  • 织梦cms要钱吗
  • 如何准确理解nosql的含义?
  • sqlserver阻止保存要求重新
  • 防伪码显示查询次数和时间
  • 主营业务收入净额在哪个报表里面
  • MySQL中使用命令行查看二进制文件
  • 建筑劳务清包工账务处理
  • 可以抵扣土地增值税的项目
  • 折扣销售方式销售货物只要发票中有注明的折扣额
  • 职工困难补助账务处理
  • 借用别的公司资质的协议范本
  • 房地产核算
  • SQLServer Top语句参数化方法
  • mysql数据库备份方法
  • 彻底清除硬盘中的文件
  • xp系统的ie浏览器无法打开该网页怎么办
  • dmidecode命令
  • 怎么在bios关闭软驱
  • windows8笔记本电脑
  • 注意 Win/WP8.1开发者账户现已迁移到全新Win10开发者中心仪表盘
  • win8网络设置
  • Jquery+Ajax+PHP+MySQL实现分类列表管理(下)
  • perl read
  • js每天的定时任务
  • javascript学习指南
  • jquery教程
  • 税务文书送达地点
  • 电子税务局个体工商户如何登陆
  • 增值税开票系统升级
  • 浙江省电税务局电话
  • 广西电票科技有限公司
  • 电子税务局使用率低的原因
  • 沙石开发票
  • 综述与系统综述
  • 工本费每月都扣?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设