Seite 1 von 1
bewegliche Feiertage für die Konsole abfragen
Verfasst: 14. Dez 2020, 16:23
von tiny
Hi,
normal gibt es ja unter Linux jede mögliche Anwendung als Konsolenversion, egal wie sinnfrei das ist. Kann ich auch Feiertag auslesen um sie in shellscripten verwursten zu können? Hier geht es natürlich um die beweglichen wie Ostern, Pfingsten sowie B+B-Tag.
Ostern könnte man zwar ausrechnen, aber den ersten Vollmond im Frühjahr abzufragen wird noch schwieriger.
Re: bewegliche Feiertage für die Konsole abfragen
Verfasst: 14. Dez 2020, 20:18
von marce
Re: bewegliche Feiertage für die Konsole abfragen
Verfasst: 15. Dez 2020, 01:08
von abgdf
Also, hier sind die bis 2029:
https://de.wikipedia.org/wiki/Gesetzlic ... _Feiertage
Am einfachsten dürfte es sein, die von da in das Skript in ein Array rüberzukopieren.
Und 2029 die Seite nochmal aufrufen, wenn wir dann noch leben und gesund sind.
Re: bewegliche Feiertage für die Konsole abfragen
Verfasst: 15. Dez 2020, 01:29
von abgdf
Aber ohne Gewähr. Bitte nochmal überprüfen. Benutzung auf eigene Gefahr:
Code: Alles auswählen
#!/usr/bin/perl
use warnings;
use strict;
my $sep = " ";
my $s = "Gründonnerstag 09.04. 01.04. 14.04. 06.04. 28.03. 17.04. 02.04. 25.03. 13.04. 29.03.
Karfreitag 10.04. 02.04. 15.04. 07.04. 29.03. 18.04. 03.04. 26.03. 14.04. 30.03.
Ostersonntag 12.04. 04.04. 17.04. 09.04. 31.03. 20.04. 05.04. 28.03. 16.04. 01.04.
Ostermontag 13.04. 05.04. 18.04. 10.04. 01.04. 21.04. 06.04. 29.03. 17.04. 02.04.
Christi Himmelfahrt 21.05. 13.05. 26.05. 18.05. 09.05. 29.05. 14.05. 06.05. 25.05. 10.05.
Pfingstsonntag 31.05. 23.05. 05.06. 28.05. 19.05. 08.06. 24.05. 16.05. 04.06. 20.05.
Pfingstmontag 01.06. 24.05. 06.06. 29.05. 20.05. 09.06. 25.05. 17.05. 05.06. 21.05.
Fronleichnam 11.06. 03.06. 16.06. 08.06. 30.05. 19.06. 04.06. 27.05. 15.06. 31.05.
Buß- und Bettag 18.11. 17.11. 16.11. 22.11. 20.11. 19.11. 18.11. 17.11. 22.11. 21.11";
sub getFeiertag {
my $name = shift;
my $year = shift;
my @a = split(/\n/, $s);
my @b;
my ($i, $n, $d);
for $i (@a) {
@b = split(/$sep/, $i);
$n = shift(@b);
if ($n eq $name) {
return $b[$year - 2020];
}
}
}
print getFeiertag("Christi Himmelfahrt", 2029);
print "\n";
print getFeiertag("Fronleichnam", 2025);
print "\n";

Re: bewegliche Feiertage für die Konsole abfragen
Verfasst: 15. Dez 2020, 11:08
von Lance_Blastoff
Ich hatte in grauer Vorzeit das gleiche Problem.
Ich bin hier fündig geworden.
http://www.it-john.de/weblog/2010/apr/0 ... eiertagen/
Mein Projekt ist nie fertig geworden. Ob der Code richtig funktioniert kann ich nicht beurteilen.
LG
Re: bewegliche Feiertage für die Konsole abfragen
Verfasst: 15. Dez 2020, 12:50
von abgdf
@Lance_Blastoff: Schönes Skript!

Re: bewegliche Feiertage für die Konsole abfragen
Verfasst: 19. Dez 2020, 13:49
von tiny
Ich hab es auch mit einem array gemacht für die nächsten 10 Jahre.