首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Awk重新格式化日期和其他行

问Awk重新格式化日期和其他行
EN

Stack Overflow用户
提问于 2016-03-08 16:23:11
回答 2查看 224关注 0票数 0

请重新格式化一个60,000行的文件,并且以这种格式的每一行:

代码语言:javascript
复制
22/02/2016 1234567745678900

第一个序列是日期,下一个序列是数字字符串。我需要将这两个字段作为输入变量提取到一个shell脚本中,这样我就可以使用这两个字段来搜索日志文件来提取一些数据。为了使日期以日志文件的日期方式格式化,我需要将日期修改为unix时间戳格式,以便整行看起来如下

代码语言:javascript
复制
2016-02-22

请用什么适当的Linux咒语来做到这一点,以及它是如何工作的,以便我下次可以复制?

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-08 17:40:51

代码语言:javascript
复制
$ awk '{gsub("/","-"); print $1,$2,"or",$2,$1}' file
22-02-2016 1234567745678900 or 1234567745678900 22-02-2016

编辑:关于更新的问题

代码语言:javascript
复制
$ echo "22/02/2016 1234567745678900" | awk '{ split($1,a,"/"); print a[3] "-" a[2] "-" a[1]}'
2016-02-22
票数 0
EN

Stack Overflow用户

发布于 2016-03-08 17:06:09

如果您希望将一个文件中的字符串22/02/2016更改为22-02-2016,则可以使用VI编辑器。

代码语言:javascript
复制
:%s/22\/02\/2016/22-02-2016/g

它将找到2016年2月22日的字符串,并更改为22-02-2016。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35872590

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档