免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1442 | 回复: 9

[文本处理] shell 提取csv 文件 [复制链接]

论坛徽章:
0
发表于 2019-04-10 22:46 |显示全部楼层
本帖最后由 jsb1993926 于 2019-04-12 03:16 编辑

请教各位需要写一个shell 名为cprocess.h
1.需要提取如下csv文件的第1.2.3列StudentID ,studentnetworkusername,以及studentname也就是说其他的信息不需要只需要前3个不重复的信息
2.之后再进行查重排除重复项比如学号100 的出现了两次那只提取一次

csv.jpg

3.执行文件后输出结果为如下
output.jpg
请问应该用什么样方法呢
谢谢
input.rar (1.2 KB, 下载次数: 9)
csv.jpg

论坛徽章:
6
2016科比退役纪念章
日期:2018-10-24 08:24:0115-16赛季CBA联赛之北控
日期:2019-03-12 14:34:562016科比退役纪念章
日期:2019-04-01 10:33:0915-16赛季CBA联赛之山东
日期:2019-04-17 12:46:3215-16赛季CBA联赛之广夏
日期:2019-05-09 16:40:4015-16赛季CBA联赛之广夏
日期:2019-10-10 15:33:40
发表于 2019-04-11 08:53 |显示全部楼层
发样本应该发文本,或者传文件附件,图片让人怎么试- - 先来个OCR?
未用你的样本测试,你自己试一下,可以用你说的格式,
csv文件在当前目录下,这样就可以了。
  1. ./cprocess.h xxx.csv
复制代码
  1. #!/usr/bin/awk -f
  2. BEGIN        {
  3.     FS=","
  4. }
  5. NR==1{
  6.     head=$1","$2","$3
  7. }
  8. NR>1{
  9.     a[$1]=$1","$2","$3
  10. }
  11. END{
  12.     print head
  13.     for (i in a)
  14.         print a[i]
  15. }
复制代码

论坛徽章:
0
发表于 2019-04-12 03:15 |显示全部楼层
回复 2# cfwyy

非常感谢...不好意思 这个csv附件我传了4次一直传不上去今天传上去了
input.rar (1.2 KB, 下载次数: 4)

论坛徽章:
0
发表于 2019-04-12 03:19 |显示全部楼层
回复 2# cfwyy

另外想请教一下如果我想让他处理完毕以后再生成一个   结果.csv 文件应该怎么做呢? 谢谢

论坛徽章:
6
2016科比退役纪念章
日期:2018-10-24 08:24:0115-16赛季CBA联赛之北控
日期:2019-03-12 14:34:562016科比退役纪念章
日期:2019-04-01 10:33:0915-16赛季CBA联赛之山东
日期:2019-04-17 12:46:3215-16赛季CBA联赛之广夏
日期:2019-05-09 16:40:4015-16赛季CBA联赛之广夏
日期:2019-10-10 15:33:40
发表于 2019-04-12 08:18 |显示全部楼层
回复 3# jsb1993926

  1. #!/usr/bin/awk -f
  2. BEGIN        {
  3.     FS=","
  4. }
  5. NR==1{
  6.     head="d,a,b,c"
  7. }
  8. NR>1{
  9.     a[$1]=$1","$4","$6","$9
  10. }
  11. END{
  12.     print head
  13.     for (i in a)
  14.         print a[i]
  15. }
复制代码
  1. ./cprocess.h xxx.csv >res.txt
复制代码

论坛徽章:
0
发表于 2019-04-14 08:06 |显示全部楼层

论坛徽章:
0
发表于 2019-04-19 16:58 |显示全部楼层
awk -F"," '{print $1","$2","$3","$4}' input.csv | sort -n | uniq| sed 's/,StudentFirstName//; s/,Madonna$//' > tmp.csv
纯命令行模式

论坛徽章:
0
发表于 2019-04-19 16:59 |显示全部楼层
awk -F"," '{print $1","$2","$3","$4}' input.csv | sort -n | uniq| sed 's/,StudentFirstName//; s/,Madonna$//' > tmp.csv
纯命令行模式

论坛徽章:
0
发表于 2019-04-19 17:00 |显示全部楼层
awk -F"," '{print $1","$2","$3","$4}' input.csv | sort -n | uniq| sed 's/,StudentFirstName//; s/,Madonna$//' > tmp.csv
纯命令行模式

论坛徽章:
0
发表于 2019-04-19 17:02 |显示全部楼层
awk -F"," '{print $1","$2","$3","$4}' input.csv | sort -n | uniq| sed 's/,StudentFirstName//; s/,Madonna$//' > tmp.csv


您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

SACC2019中国系统架构师大会

【数字转型 架构演进】SACC2019中国系统架构师大会,8.5折限时优惠重磅来袭!
2019年10月31日~11月2日第11届中国系统架构师大会(SACC2019)将在北京隆重召开。四大主线并行的演讲模式,1个主会场、20个技术专场、超千人参与的会议规模,100+来自互联网、金融、制造业、电商等领域的嘉宾阵容,将为广大参会者提供一场最具价值的技术交流盛会。

限时8.5折扣期:2019年9月30日前


----------------------------------------

大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP