linux - 如何在 Unix 命令的两列中获取相同值的唯一值
问题描述
我有一个巨大的 csv 文件我想知道相同的源 IP 地址和目标 IP 地址的唯一值以及如何转换我的日志计时格式
"Date", "User Information", "Source IP", "Destination IP", "HTTP Status Code", "HTTP Method", "URL", "Receive byte", "Send byte"
"[31/Jul/2018:21:11:55 +0900] ","ayw23","17.248.157.14","17.248.157.14","247","CONNECT","setup.iciwh.com:443","2938","600"
那么比较一下awk的使用呢?
cat file.csv| awk '$6 == $7'
我喜欢得到这样的输出
2018/7/31 21:11 17.248.157.14 setup.iciwh.com:443
解决方案
为了比较您的情况下的值,您应该在您的情况下使用-F
选项awk
,字段分隔符是,
而不是space
awk -F, '{ if( $6 == $7) print "equal" }' test.csv
或者
awk -F, ' $6 == $7 { print "equal" }' test.csv
另外,因为第一行是标题,你不想在这一行有条件,你可以包括条件NR >1
awk -F, 'NR >1 && $6 != $7 { print $6 $7 }' test.csv
对于日期转换,请查看以下链接。提供了许多建议来实现这一目标
推荐阅读
- asp.net-core - 是否有适用于 ASP.NET Core 1.1(不是 core 2.0)的 NPOI 版本
- python - 在 Jupyter Notebook 中使用 watson_developer_cloud 时出错
- node.js - 为什么中间件不能在 express js 中工作
- reactjs - What is the correct way to type a React HOC?
- python - TensorFlow Serving 分组卷积
- julia - 惯用的 Julia 和 return 关键字
- php - 在 Laravel 5.4 中覆盖邮件服务
- javascript - 我们是否应该将 SpringMVC(Thymeleaf, Jsp) 与 Js 框架 (Reactjs, AngularJs,..) 集成
- javascript - JavaScript 变量在定义后更改为输出行
- javascript - 如何根据搜索在表格中显示 JSON 数据?