加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 用AWK增加日期几天和几个月

发布时间:2020-12-14 00:53:04 所属栏目:Linux 来源:网络整理
导读:使用AWK增加日期 大家好,我需要你的帮助.我有一个文件“test.csv”,我想增加“6个月”和“10天”的日期,以便我得到以下输出: test.csv: "000001","TEST1","2013-05-07 16:02:07","ACTIVE""000003","TEST3","2013-05-09 16:02:07","ACTIVE""000004","TEST4"
使用AWK增加日期

大家好,我需要你的帮助.我有一个文件“test.csv”,我想增加“6个月”和“10天”的日期,以便我得到以下输出:

test.csv:

"000001","TEST1","2013-05-07 16:02:07","ACTIVE"
"000003","TEST3","2013-05-09 16:02:07","ACTIVE"
"000004","TEST4","2013-05-10 16:02:07","ACTIVE"
"000005","TEST5","2013-05-11 12:02:07","ACTIVE"

输出test-increment-10days.csv:

"000001","ACTIVE","2013-05-17 16:02:07"
"000003","2013-05-19 16:02:07"
"000004","2013-05-20 16:02:07"
"000005","2013-05-21 12:02:07"

输出test-increment-6months.csv:

"000001","2013-11-07 16:02:07"
"000003","2013-11-09 16:02:07"
"000004","2013-11-10 16:02:07"
"000005","2013-11-11 12:02:07"

我用这个命令试了一下:

awk -F””,”” ‘{{ cmd=”date ”+%Y-%m-%d %T” -d ””$3″ +10 days””; cmd | getline datum; close(cmd); print $0 “,””datum”””}}’ test.csv > test-increment-10days.csv

awk -F””,”” ‘{{ cmd=”date ”+%Y-%m-%d %T” -d ””$3″ +6 months””; cmd | getline datum; close(cmd); print $0 “,””datum”””}}’ test.csv > test-increment-6months.csv

但我得到了错误的输出.

测试递增,10days.csv:

"000001","2013-05-08 16:02:07"
"000003","2013-05-10 16:02:07"
"000004","2013-05-11 16:02:07"
"000005","2013-05-12 12:02:07"

测试递增,6months.csv:

"000001","2013-06-07 16:02:07"
"000003","2013-06-09 16:02:07"
"000004","2013-06-10 16:02:07"
"000005","2013-06-11 12:02:07"

“test-increment-10days.csv”中的日期仅增加一天,而“test-increment-6months.csv”中的日期仅增加一个月.希望有人可以提供帮助.

解决方法

试试这个:

awk -F"","" '{cmd="date -d "$(date -d ""$3"")+10days" "+%Y-%m-%d %T"";cmd | getline datum; close(cmd); print $0 ",""datum"""}' test.csv > test-increment-10days.csv

基础日期命令的示例是:

date -d "$(date -d '2013-05-07 16:02:07')+10days" "+%Y-%m-%d %T"

有两个日期命令.内部日期创建具有指定值的日期.然后添加10天.外部日期创建一个新的递增日期并对其进行格式化.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读