GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Druckdatum für den Montag der aktuellen Woche (in bash)

Versuchen Sie dies, um das Datum des aktuellen Montags zu erhalten.

wd=`date +%u`; 
let wd=wd-1; 
mon=`date --date="-$wd day" +%Y%m%d`;

Für diejenigen von uns ohne GNU-Daten (wie wir OS Xer) haben wir vielleicht den "-v"-Parameter

Sie können dann Folgendes tun:

# Most recent Monday
date -v -Mon

# Output as of this writing
Mon Jun 24 12:35:48 EDT 2013

date -v -Mon "+%Y%m%d"

# Outputs
20130624

Dies scheint auch kein Problem zu sein, wenn heute Montag ist, in meinem aktuellen Fall Donnerstag

# Today's date
date

# Outputs
Thu Jun 27 12:41:39 EDT 2013

# Most recent Thursday
date -v -Thu

# Outputs
Thu Jun 27 12:41:46 EDT 2013

#monday
date -dmonday +%Y%m%d

#last monday
date -dlast-monday +%Y%m%d

#next monday
date -dnext-monday +%Y%m%d

#two mondays from now
date -d'monday+14 days' +%Y%m%d

#two mondays ago
date -d'monday-14 days' +%Y%m%d

#although, if you fancy yourself an Abraham Lincolin
date -d'monday-fortnight ago' +%Y%m%d #2 weeks ago
date -d'monday+fortnight' +%Y%m%d #2 weeks from now

#Monday Next Year
date -d'52+monday' +%Y%m%d

#However, Monday Last Year
date -d'52-monday' +%Y%m%d  #DOES NOT  WORK




#you can try a day other than monday
#and format this differently.

Wenn Sie nach einem Bereich suchen, müssen Sie möglicherweise einige Dinge tun

#Tuesday to Sunday
#since today is monday, I'll use Tuesday
echo `date -dtuesday +%Y%m%d-``date -dnext-sunday +%Y%m%d`

was ausgeben würde:

20110628-20110703

Mehr zu Terminen

Beachten Sie, dass dies nur auf GNU-Daten funktioniert

Das habe ich gelesen:

Aktuelle Solaris-Version, die -d nicht unterstützt kann behoben werden, indem die sunfreeware.com-Version vom Datum ersetzt wird


Ich denke, das beantwortet tatsächlich, was angefordert wurde:

date -d "next monday - 7 days"

Linux
  1. Zwei großartige Anwendungen für den cp-Befehl:Bash-Shortcuts

  2. Holen Sie sich individuelle Manpages für die Bash Builtin-Befehle?

  3. Holen Sie sich die aktuelle Zeit in Sekunden seit der Epoche auf Linux, Bash

  4. Überprüfen Sie den freien Speicherplatz für die aktuelle Partition in Bash

  5. Wie kann ich das aktuelle Datum und die aktuelle Uhrzeit im Terminal abrufen und einen benutzerdefinierten Befehl im Terminal dafür festlegen?

So erhalten Sie das aktuelle Datum und die aktuelle Uhrzeit in Python

Formatierungstricks für den Linux-Datumsbefehl

Bash For Loop – Die praktischste Anleitung

Der Zweck des Schlüsselworts „do“ in Bash-For-Schleifen?

Ist es möglich, dass die Bash-Vervollständigung die Alternativen durchläuft?

Die Bash FOR-Schleife erklärt und vereinfacht