Compare non-standard time format to now() in linux

  • Stato Completato
  • Budget $10 - $30 USD
  • Offerte totali 1

Descrizione del Progetto

I run debian on a raspberry pi and want to see if a given timestamp is older than X hours. This would be trivial if the timestamp was in a standard format, but unfortunately that is not the case.

The timestamp has the following format:

November 5, 2016 at 12:50AM

or

November 14, 2016 at 04:35PM

I'm looking for a tool that can take in a timestamp in a given input-format, and convert to another time format. I can use any tools as long as they are available on debian/raspberry pi.

What I'm looking for is something like this:

#!/bin/bash

timeout="1440" # 24 hours = 1440 minutes

now=$(date +"%Y%m%d%H%M") # = 201611271814

timestamp_raw="November 5, 2016 at 12:50AM"

timestamp=$(convert "$timestamp_raw" --inputformat +"%B %e, %Y at %I:%M%p" --outputformat +"%Y%m%d%H%M") # this command is fictitious but should produce something like 201611050050

comparedate=$(expr $now - $timeout) # = now() - 24 hours

if [ $timestamp -ge $comparedate ];

then

echo 'yes';

fi

Can you point me in the right direction?

Ottieni preventivi gratuiti per un progetto simile a questo
Completato da:
Competenze richieste

Hai voglia di guadagnare un po'?

  • Seleziona budget e durata
  • Delinea la tua proposta
  • Fatti pagare per il tuo lavoro

Assumi Freelancer che hanno fatto un'offerta per questo progetto

    • Forbes
    • The New York Times
    • Time
    • Wall Street Journal
    • Times Online