Portable way of translating epoch time


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Portable way of translating epoch time
# 1  
Old 03-13-2017
Portable way of translating epoch time

Code:
echo $(date +%s) | awk '{ print strftime("%c", $2"-"$3"-"$NF"/"$4); }'

The above command only seems to work on newer versions of awk or systems with gawk installed.


how can i translate the epoch time into a human readable format using a portable method?

also,
Code:
date -d@$epochtime

does not work on systems like AIX. so thats not portable.

Last edited by SkySmart; 03-13-2017 at 04:22 PM..
# 2  
Old 03-13-2017
I'd feel somewhat surprised if above would print anything reasonable. date +%s (WHY the echo, BTW ?) prints sth. like 1489436283, so in the following awk, NF is 1, and all the fields referenced are undefined.

Recent shells (bash, ksh, ...) offer a printf builtin with the %(...)T format specifier:
Code:
printf "%(%F %T)T\n", $ET
2017-03-13 21:23:02

These 2 Users Gave Thanks to RudiC For This Post:
# 3  
Old 03-13-2017
I typically recommend using perl for a portable solution to this type of problem, most OS have it installed by default:

Code:
$ perl -e 'use POSIX; print strftime($ARGV[0]."\n", localtime(time() + $ARGV[1]));' '%c' $((10 * 60 * 60))
Tue, Mar 14, 2017  2:45:50 AM

These 3 Users Gave Thanks to Chubler_XL For This Post:
# 4  
Old 03-14-2017
Hi.

The command found here General Purpose Date Script can be used like:
Code:
date.pl -d "@$(date +%s)"

producing:
Code:
2017-03-14 10:52:23

Thank Corona688 if you use it.

My name for it is date.pl -- here are some details:
Code:
date.pl  GNU date work-alike. (what)
Path    : ~/bin/date.pl
Version : - ( local: RepRev 1.13, ~/bin/date.pl, 2016-09-11 )
Length  : 378 lines
Type    : Perl script, ASCII text executable
Shebang : #!/usr/bin/env perl
Help    : probably available with --help
Home    : https://www.unix.com/tips-tutorials/239167-general-purpose-date-script.html
Modules : (for perl codes)
 POSIX  1.38_03
 strict 1.08
 warnings       1.23
 constant       1.31

This is one of the codes in my new system toolbox that I carry with me to new environments.

Best wishes ... cheers, drl

Last edited by drl; 03-14-2017 at 01:01 PM.. Reason: Another correction.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Awk: time intervals based on epoch time

I have a list of epoch times delimited by "-" as follows: 1335078000 - 1335176700 1335340800 - 1335527400 1335771300 - 1335945600 1336201200 - 1336218000 The corresponding dates are: 20120422 1000 - 20120423 1325 20120425 1100 - 20120427 1450 20120430 1035 - 20120502 1100 ... (3 Replies)
Discussion started by: alex2005
3 Replies

2. Shell Programming and Scripting

Converting real time to epoch time

# date +%s -d "Mon Feb 11 02:26:04" 1360567564 # perl -e 'print scalar localtime(1360567564), "\n";' Mon Feb 11 02:26:04 2013 the epoch conversion is working fine. but one of my application needs 13 digit epoch time as input 1359453135154 rather than 10 digit epoch time 1360567564... (3 Replies)
Discussion started by: vivek d r
3 Replies

3. Shell Programming and Scripting

Shell script to convert epoch time to real time

Dear experts, I have an epoch time input file such as : - 1302451209564 1302483698948 1302485231072 1302490805383 1302519244700 1302492787481 1302505299145 1302506557022 1302532112140 1302501033105 1302511536485 1302512669550 I need the epoch time above to be converted into real... (4 Replies)
Discussion started by: aismann
4 Replies

4. Shell Programming and Scripting

epoch time

Hi all, I got a file with epoch times like this. 1264010700 1264097400 1263529800 1263762900 1263924300 What I want. I want all epoch times which are > current epoch time written to a file. So everything that is < will be ignored and not written to the file. Thanks (3 Replies)
Discussion started by: stinkefisch
3 Replies

5. Shell Programming and Scripting

how to convert date time to epoch time in solaris

Hi, Is there any easy way to convert date time(stored in shell variable ) to epoch time in solaris box? As +%s is working on linux but not on solaris, also -d option is not working. Any suggestion please? (6 Replies)
Discussion started by: anshuman0507
6 Replies

6. Shell Programming and Scripting

Convert Epoch Time to Standard Date and Time & Vice Versa

Hi guys, I know that this topic has been discuss numerous times, and I have search the net and this forum for it. However, non able to address the problem I faced so far. I am on Solaris Platform and unable to install additional packages like the GNU date and gawk to make use of their... (5 Replies)
Discussion started by: DrivesMeCrazy
5 Replies

7. Shell Programming and Scripting

Convert Epoch time format to normal date time format in the same file

I have a file named "suspected" with series of line like these : {'protocol': 17, 'service': 'BitTorrent KRPC', 'server': '219.78.120.166', 'client_port': 52044, 'client': '10.64.68.44', 'server_port': 8291, 'time': 1226506312L, 'serverhostname': ''} {'protocol': 17, 'service': 'BitTorrent... (3 Replies)
Discussion started by: rk4k
3 Replies

8. Shell Programming and Scripting

epoch time

Hi, i need to convert below date/time format into epoch time YYYY-m-d H:M below the example: a=`date +"%F %H:%M"` echo $a Convert $a to epoch time ------------------------------------------------------------------------ lets take an example if $a=1.03 here i want the epoch time... (3 Replies)
Discussion started by: ali560045
3 Replies

9. UNIX for Advanced & Expert Users

Epoch time

Guys, i have a question... I have 2 sets of data say "a" and "a+1" which has values in epoch time.. Question is... if i were to get the time difference where diff = "a+1" - "a" can i convert it back to real time duration after the subtraction... OR i need to convert em first before i do the... (2 Replies)
Discussion started by: 12yearold
2 Replies

10. Shell Programming and Scripting

Epoch time

Guys, i have a question... I have 2 sets of data say "a" and "a+1" which has values in epoch time.. Question is... if i were to get the time difference where diff = "a+1" - "a" can i convert it back to real time duration after the subtraction... OR i need to convert em first before i do the... (1 Reply)
Discussion started by: 12yearold
1 Replies
Login or Register to Ask a Question