2017-02-24 1 views
0

In meiner Unix-Shell-Programmierung versuche ich, das nächste Datum (das Datum von morgen) über ein Referenzdatum zu bekommen, das als "a" definiert ist. Hier ist der Code:BASH/Linux - Suche nach dem nächsten Datum aus einer Variablen

a=2016-01-02 

Welche Betreiber würde ich in meinem Code verwenden, so dass Unix automatisch ein, wie das morgige Datum wie in unten

a=2016-01-03 
+0

Verwenden Sie das Datum unter 'FreeBSD' oder' GNU'? Können Sie "Datum - Version" ausgeben? – Inian

Antwort

2

date hat eine -d Option definieren, die sehr nützlich ist in diese Situation.

Um am nächsten Tag zu erhalten, um einen Raum nach dem Datum hinzufügen fügen Sie dann 1 day

date +%Y-%m-%d -d "$a 1 day" 

Es ist wichtig, den Formatbezeich hinzuzufügen, weil ohne sie die folgende Ausgabe

=>"Sun Jan 3 00:00:00 UTC 2016" 
bekommen würde

Um die a Variable zu aktualisieren, könnten Sie etwas wie diese tun

a=$(date +%Y-%m-%d -d "$a 1 day")

Denken Sie daran, den Befehl innerhalb von Klammern mit einem $ Zeichen davor zu wickeln.

Verwandte Themen