Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
939 views
in Technique[技术] by (71.8m points)

unix - Converting timestamp to EPOCH in awk

I am converting timestamps to EPOCH seconds in awk, getting incorrect output for repeated timestamps

Input:

20180614 00:00:00
20180614 00:00:23
20180614 22:45:00
20180614 22:45:21
20180614 00:00:00
20180614 00:00:23

Expected Output :

1528930800
1528930823
1528930800
1529012721
1528930800
1528930823

I did

awk '{ ts="""$0"""; ("date +%s -d "ts)| getline epochsec; print epochsec}'

output after running above command:

1528930800
1528930823
1529012700
1529012721
1529012721
1529012721
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

With GNU xargs:

xargs -I {} date +%s -d {} < file

Output:

1528927200
1528927223
1529009100
1529009121
1528927200
1528927223

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...