文章目录
简介
使用Linux命令:sed、grep、zip、unzip进行控制Excel表格进行插入操作的整理记录
准备
- 一份学生学号文件
- 一份关于学生的Excel文件
过程
将xlsx文件更改成zip文件,并解压至unziptable目录下
unzip 命令 -d<目录> 指定文件解压缩后所要存储的目录。
[root@dst excel2]# mv table.xlsx table.zip
[root@dst excel2]# unzip table.zip -d unziptable
通过Excel表格中已有的学生姓名匹配出xuehao.txt文件中的学生学号,并插入至Excel表格中
Excel表格中学生所在的单元格
#1.查找学生姓名
grep Sheet1.B................. unziptable/* -R -o |
#2.进行清洗
sed 's/.*f><v>//g' |
sed 's/<.*//g' |
#3.将查询到的学生姓名通过数据参数管道,每一个都添加至学号文件的开头
xargs -i sed 's/^/{}yyy/g' xuehao.txt |
#4.通过grep划分区域,匹配出现两次的姓名区域,即可匹配出我们需要学生的学号信息
grep '^\(.*\)yyy.*\1' |
#5. 再次进行清洗
sed 's/.*yyy//g' |
sed 's/ .*//g' |
#进行开头标记,表示修改成功
sed 's/^/dst/g' |
#6.进行插入至excel表格中
xargs -i sed 's/<v>94</<v>{}</1' unziptable/xl/worksheets/sheet3.xml -i
- 查找学生姓名
- 进行清洗
- 将查询到的学生姓名通过数据参数管道,每一个都添加至学号文件的开头
- 通过grep划分区域,匹配出现两次的姓名区域,即可匹配出我们需要学生的学号信息
- 再次进行清洗
将所有解压的内容压缩
[root@dst excel2]# zip table2.zip -r unziptable/*
将压缩的table2.zip 更改为xlsx文件
mv table2.zip table2.xlsx
结果
来源:CSDN
作者:变秃,才能变强
链接:https://blog.csdn.net/Dchanong_/article/details/104611544