【Shell】使用awk sed获取一行内容的两个值
突然有需求需要一个脚本,同时获取到每一行数据的两个值,下面做了一个例子模板,仅供记录参考
cat test.txt
id=1,name=zclinux1
id=2,name=zclinux2
id=3,name=zclinux3
id=4,name=zclinux4
id=5,name=zclinux5
id=6,name=zclinux6
id=7,name=zclinux7
id=8,name=zclinux8
id=9,name=zclinux9
id=10,name=zclinux10
id=11,name=zclinux11
id=12,name=zclinux12
id=13,name=zclinux13
id=14,name=zclinux14
id=15,name=zclinux15
id=16,name=zclinux16
id=17,name=zclinux17
id=18,name=zclinux18
id=19,name=zclinux19
id=20,name=zclinux20
cat test.sh
#!/bin/bash
filename=~/test.txt
id=`grep id $filename | awk -F',' '{print $1}'| awk -F'=' '{print $2}'`
for i in $id;
do
f1=`sed -n "${i}p" $filename | awk -F',' '{print $1}'| awk -F'=' '{print $2}'`
f2=`sed -n "${i}p" $filename | awk -F',' '{print $2}'| awk -F'=' '{print $2}'`
echo "id = $f1 ,Name = $f2"
done
执行结果:
sh test.sh
id = 1 ,Name = zclinux1
id = 2 ,Name = zclinux2
id = 3 ,Name = zclinux3
id = 4 ,Name = zclinux4
id = 5 ,Name = zclinux5
id = 6 ,Name = zclinux6
id = 7 ,Name = zclinux7
id = 8 ,Name = zclinux8
id = 9 ,Name = zclinux9
id = 10 ,Name = zclinux10
id = 11 ,Name = zclinux11
id = 12 ,Name = zclinux12
id = 13 ,Name = zclinux13
id = 14 ,Name = zclinux14
id = 15 ,Name = zclinux15
id = 16 ,Name = zclinux16
id = 17 ,Name = zclinux17
id = 18 ,Name = zclinux18
id = 19 ,Name = zclinux19
id = 20 ,Name = zclinux20
将同一行中的id和Name分别都提取出来
【Shell】使用awk sed获取一行内容的两个值的更多相关文章
- shell读取文件的每一行内容并输出【转】
写法一: #!/bin/bash while read line do echo $line done < file(待读取的文件) 写法二: #!/bin/bash cat file(待读取的 ...
- linux shell中如何批量添加一行内容到某些文件的末尾?
答:先使用find找出要指定的某些文件,然后使用xargs和sed工具将内容插入到这些文件的末尾 find . -name 'filename*' | xargs sed -i '$a\added-c ...
- linux shell grep/awk/sed 匹配tab
处理文件的命令实在是多, sed, awk, grep等.遇到了需要匹配tab的情况, 记录一下. 例子如下:找出文本中第一列是1的行. 文本a 解法1 : 直接使用正则表达式, ^表示开头, \t表 ...
- (转)shell:读取文件的每一行内容并输出
写法一:----------------------------------------------------------------------------#!/bin/bashwhile rea ...
- shell 读取文件的每一行内容并输出
(1)#!/bin/bash while read linedo echo $linedone < file (2)#!/bin/bash cat file | while read l ...
- [转]shell awk sed tr grep 语法汇总
tr 基本语法 -c # 用字符串1中字符集的补集替换此字符集,要求字符集为ASCII -d # 删除字符串1中所有输入字符 -s # 删除所 ...
- shell下的 awk/sed/grep/seq/tr
转自:实例手册 https://github.com/liquanzhou/ops_doc/blob/master/shell%E5%AE%9E%E4%BE%8B%E6%89%8B%E5%86%8C. ...
- shell脚本 5 sed和awk
文本处理三剑客 在 Shell 下使用这些正则表达式处理文本最多的命令有下面几个工具: 命令 描述 grep 默认不支持扩展表达式,加-E 选项开启 ERE.如果不加-E 使用花括号要加转义符\{\} ...
- shell编程系列10--文本处理三剑客之sed利用sed查询特定内容
shell编程系列10--文本处理三剑客之sed利用sed查询特定内容 利用sed查找文件内容: pattern种类: .8p .,10p .,+5p ./regexp/p .,/regexp/p . ...
随机推荐
- Android全面解析之Activity生命周期
前言 很高兴遇见你~ 欢迎阅读我的文章. 关于Activity生命周期的文章,网络上真的很多,有很多的博客也都讲得相当不错,可见Activity的重要性是非常高的.事实上,我猜测每个android开发 ...
- Day2 列表list
list 列表 list是Python内置的一种数据类型, 是一种有序的集合, 可以随时添加或删除其中的元素,可以包含不同数据类型的元素.可以作为元素被别的list包含 . nam ...
- windows远程msra windows使用技巧
qq远程太慢,mstsc?又不想把电脑密码告诉好友,怎么办呢?在这里推荐一个方法: 点击开始运行输入msra,确定,邀请信任的人帮助你您,将该邀请另存为文件,然后这个窗口不要关,把密码复制粘贴给好友, ...
- 在linux下使用Apache搭建文件服务器
目录 一.关于文件服务器 二.使用Apache搭建文件服务器 三.测试文件服务器是否可用 一.关于文件服务器 在一个项目中,如果想把公共软件或者资料共享给项目组成员,可以搭建一个简易的文件服务器来 ...
- docker 安装es跟kibana
首先docker 查询es docker search elasticsearch 在docker pull elasticsearch:7.9.3 docker在查询 kibana docker ...
- 从苹果BigSur官网学点东西
从苹果BigSur官网学点东西 Awsome配色 这个 蓝紫渐变大底 + 简洁的 矩形状字块 + 粗细层次字形,看着就蛮舒服. 看看css配色: .section-hero div[data-comp ...
- 利用基于Go Lang的Hugo配合nginx来打造属于自己的纯静态博客系统
Go lang无疑是目前的当红炸子鸡,极大地提高了后端编程的效率,同时有着极高的性能.借助Go语言我们 可以用同步的方式写出高并发的服务端软件,同时,Go语言也是云原生第一语言,Docker,Kube ...
- Python的精髓居然是方括号、花括号和圆括号!
和其他编程语言相比,什么才是Python独一无二的特色呢?很多程序员会说,缩进.的确,缩进是Python语言的标志性特点,但这只是外在的.形式上的.从语言特性层面讲,Python的特点是什么呢?我尝试 ...
- MGRE综合实验
实验要求: 实验拓扑: 一. R1-2-3构建星型结构的MGRE结构,R1为中心站点,假设R1的共有IP为固定地址 1. 配置IP地址 2. 配置缺省 3. 配置MGRE环境 在中心站点上: 在分支站 ...
- git使用上
因为最近工作上多处都用到了基于 Git 的开发,需要深入理解 Git 的工作原理,以往的 Git 基本知识已经满足不了需求了,因此写下这篇 Git 进阶的文章,主要是介绍了一些大家平时会碰到但是很少去 ...