Shell 脚本,每隔100行插入一条记录,并且记录第一列包含行号,其他列不变
来源:互联网 发布:域名被注册局保留 编辑:程序博客网 时间:2024/05/21 09:16
1、例子:每隔100行插入一条记录,并且此条记录的第一列包含行号,其他列与第一行相同
#!/bin/sh
var="00001" # 变量
cat a.txt|awk 'NR==1'|while read line # 获取文件第一行
do
#echo "$line"
result=`echo "$line"|cut -f2-` # 默认以tab分割,获取第二列至最后一列
cat a.txt|awk 'NR%100==0{printf("%04d\n", NR)}'|while read line #每隔100行获取行号,行号是4位,不足位数补0
do
data=`echo -e "9$line$var\t$result"`
echo "$line"
#echo "$result"
#echo "$data"
#sed -e "'$line'a\'$data'" a.txt
sed -i ''$line'a '"$data"'' a.txt # 向文件插入
done
done
2、例子:每隔100行,替换第100行数据
#!/bin/sh
var="abc"
cat a.txt|awk 'NR%100==0'|awk '{split($0,b,"\t");print b[2]}'|while read line # 读取a文件,每隔100行获取当前行第二列
do
#echo "$line"
sed -i "s/$line/$var/g" a.txt # 用已知变量替换过上面获得的列
done
0 0
- Shell 脚本,每隔100行插入一条记录,并且记录第一列包含行号,其他列不变
- 仅包含标识列的表插入记录的方法
- 如何插入一条记录获取插入后的自动增长ID列的方法.
- ResultSet取得一条记录的列数
- 向数据库中插入一条记录后如何获得自动生成的列值?
- SQL SERVER 中 实现主表1行记录,子表多行记录 整合成一条虚拟列
- .net 每隔半个钟生成一条记录
- .net 每隔半小时生成一条记录
- oracle sql 重复记录 只显示一条 ,显示 时间最近 或id 最大,同时显示其他列
- mysql插入一条记录,删除一条记录
- 列记录转换为行记录
- 行记录转换为列记录
- 显式插入带有标识列的记录
- sql插入记录到带标识列的表
- SQLITE中插入一条记录
- 如何使datalist的第一列显示记录序号?
- 调试记录:解决listview第一列不居中的问题
- sql server 2008怎样每隔几行取一条记录?
- backtrace in gdb
- MYSQL函数1
- 由一个sizeof()引发的内存越界问题
- Java 可变长参数
- 为什么MB51本位币金额和采购订单历史本位币金额不一样?
- Shell 脚本,每隔100行插入一条记录,并且记录第一列包含行号,其他列不变
- Python书籍推荐
- tomcat日志时间时区设置
- ffmpeg的使用
- 凭兴趣求职80%会失败,为什么
- 京东12G用户数据外泄,京东官方承认:源于2013年安全漏洞
- 黑盒测试和白盒测试
- 常见动态网站开发技术对比:JSP、ASP.net、php
- RecycleView的学习和总结