Sponsored Content
Top Forums Shell Programming and Scripting Compare the system date with date from a text file Post 302992014 by Chubler_XL on Monday 20th of February 2017 03:18:52 PM
Old 02-20-2017
Quote:
Originally Posted by Loc
Jul 28 14:57 2017 GMT
How do I convert this date to the number of seconds, so I can compare it to the system date? If it is over 2 days old.
I have this code but it doesn't work. I'm getting an error message when I ran it. I think its because $dateFile is a text file and it doesn't know how to convert it.
Any help would be appreciated.
Edit: I just noticed you have cut the minutes value out of the original date - I'm assuming this was a mistake and your cut command should probably have been cut -d ':' -f 2-4

If your system has GNU date you can use date -d STRING to display time described by STRING eg:

Code:
$ date -d "Jul 28 14:09:57 2017 GMT" +%s
1501250997

If you don't have GNU date you can use a perl program to achieve the same thing (most systems seem to have perl available).

save this a epoch.pl and chmod +x epoch.pl:
Code:
#!/bin/perl
use POSIX;
use Time::Local;

my %mon;
@mon{qw/Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec/} = 0..11;

my ($mth, $d, $h, $m, $s, $y) = split(/[: ]/, $ARGV[0]);

eval {
  printf "%d\n", timegm(0, $m, $h,$d,$mon{$mth}, $y)
};
printf "ERROR" if $@;


The you can call it like this
Code:
$ ./epoch.pl "Jul 28 14:09:57 2017 GMT"
1501250997


Last edited by Chubler_XL; 02-20-2017 at 04:45 PM..
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

compare today's date with date in a file

Hi I am very new to scripting, Can someone show me how to (in unix shell script) compare the system's date with a date in a file. The requirement is to somehow open this file (which will only have a date in it) and compare it with today's date. If they are equal execute a procedure below but if... (4 Replies)
Discussion started by: siog
4 Replies

2. UNIX for Dummies Questions & Answers

compare date with date in file

Hello everyone, I'm in desperate need of your help for this challenge I have below: The run_dt_tbl has only 1 column and 1 row that contains a particular date in format mmddyy. I want to some how compare today's date with the date in this table that will be preset by someone else. If the dates... (2 Replies)
Discussion started by: siog
2 Replies

3. Linux

compare files in the system with last modified date

HI, I have some files in my Linux machine that are very old and occupy a HUGe amount of space. I am trying to delete these files from the system so that it will be easy for me to add some files. I would like to know if this can done through a Perl or a shell script. What i want to do is i... (6 Replies)
Discussion started by: bsandeep_80
6 Replies

4. Shell Programming and Scripting

Compare date from db2 table to yesterday's Unix system date

I am currently running the following Korn shell script which works fine: #!/usr/bin/ksh count=`db2 -x "select count(*) from schema.tablename"` echo "count" I would like to add a "where" clause to the 2nd line that would allow me to get a record count of all the records from schema.tablename... (9 Replies)
Discussion started by: sasaliasim
9 Replies

5. UNIX for Dummies Questions & Answers

Delete a row from a file if one column containing a date is greater than the current system date

Hello gurus, I am hoping someone can help me with the required code/script to make this work. I have the following file with records starting at line 4: NETW~US60~000000000013220694~002~~IT~USD~2.24~20110201~99991231~01~01~20101104~... (4 Replies)
Discussion started by: chumsky
4 Replies

6. Shell Programming and Scripting

ksh compare dates INSIDE a file (ie date A is > date B)

In KSH, I am pasting 2 almost identical files together and each one has a date and time on each line. I need to determine if the first instance of the date/time is greater than the 2nd instance of the date/time. If the first instance is greater, I just need to echo that line. I thought I would... (4 Replies)
Discussion started by: right_coaster
4 Replies

7. Shell Programming and Scripting

Adding days to system date then compare to a date

Hi! I am trying to read a file and every line has a specific date as one of its fields. I want to take that date and compare it to the date today plus 6 days. while read line do date=substr($line, $datepos, 8) #date is expected to be YYYYMMDD if ; then ...proceed commands ... (1 Reply)
Discussion started by: kokoro
1 Replies

8. UNIX for Beginners Questions & Answers

Compare date in .txt with system date and remove if it's lesser than system date

Can someone help me with the code wherein there is a file f1.txt with different column and 34 column have expiry date and I need to get that and compare with system date and if expiry date is <system date remove those rows and other rows should be moved to new file f2.txt . I don't want to delete... (2 Replies)
Discussion started by: Stuti
2 Replies

9. Answers to Frequently Asked Questions

Compare date in .txt with system date and remove if it's lesser than system date

I m working on shell scripting and I m stuck where in my .txt file there is column as expiry date and I need to compare that date with system date and need to remove all the rows where expiry date is less than system date and create a new .txt with update. (1 Reply)
Discussion started by: Stuti
1 Replies

10. UNIX for Beginners Questions & Answers

“sed” replace date in text file with current date

We want to call a parameter file (.txt) where my application read dynamic values when the job is triggered, one of such values are below: abc.txt ------------------ Code: line1 line2 line3 $$EDWS_DATE_INSERT=08-27-2019 line4 $$EDWS_PREV_DATE_INSERT=08-26-2019 I am trying to write a... (3 Replies)
Discussion started by: pradeepp
3 Replies
Mojo::Date(3pm) 					User Contributed Perl Documentation					   Mojo::Date(3pm)

NAME
Mojo::Date - HTTP 1.1 date container SYNOPSIS
use Mojo::Date; my $date = Mojo::Date->new(784111777); my $http_date = $date->to_string; $date->parse('Sun, 06 Nov 1994 08:49:37 GMT'); my $epoch = $date->epoch; DESCRIPTION
Mojo::Date implements HTTP 1.1 date and time functions according to RFC 2616. Sun, 06 Nov 1994 08:49:37 GMT ; RFC 822, updated by RFC 1123 Sunday, 06-Nov-94 08:49:37 GMT ; RFC 850, obsoleted by RFC 1036 Sun Nov 6 08:49:37 1994 ; ANSI C's asctime() format ATTRIBUTES
Mojo::Date implements the following attributes. "epoch" my $epoch = $date->epoch; $date = $date->epoch(784111777); Epoch seconds. METHODS
Mojo::Date inherits all methods from Mojo::Base and implements the following new ones. "new" my $date = Mojo::Date->new; my $date = Mojo::Date->new($string); Construct a new Mojo::Date object. "parse" $date = $date->parse('Sun Nov 6 08:49:37 1994'); Parse date in one of the following formats. - Epoch format(784111777) - RFC 822/1123 (Sun, 06 Nov 1994 08:49:37 GMT) - RFC 850/1036 (Sunday, 06-Nov-94 08:49:37 GMT) - ANSI C asctime() (Sun Nov 6 08:49:37 1994) "to_string" my $string = $date->to_string; Render date suitable for HTTP 1.1 messages. SEE ALSO
Mojolicious, Mojolicious::Guides, <http://mojolicio.us>. perl v5.14.2 2012-09-05 Mojo::Date(3pm)
All times are GMT -4. The time now is 02:21 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy