Přeskočit na obsah

Sny/Databáze/Kychot/Skripty

Z Wikiverzity

Skripty

sny-mesic.pl

[editovat]

Skriptík, který mi připraví tabulku pro sny na další měsíc:

#! /usr/bin/perl -w
# sny-mesic.pl
# Připraví kalendář pro sny. Použití (např. pro Kychota, 2008, listopad):
# ./sny-mesic.pl 'Kychot' 2008 11

use DateTime;

@daycz = qw(Po Út St Čt Pá So Ne);
@monthcz = qw(leden únor březen duben květen červen červenec srpen září říjen listopad prosinec);
$user = shift;
$dt = DateTime->new( year => shift, month => shift);
print "== $monthcz[$dt->month_0] ==\n{|\n";

while(1){
    printf "| [[Sny/Databáze/%s/%s|%s]] || (%s/%s) ||\n",
        $user, $dt->ymd, $dt->ymd, $daycz[($dt->dow_0-1)%7], $daycz[$dt->dow_0];
    $dt->add( days => 1);
    if( $dt->day == 1) {last;}
    print "|-\n";
}
print "|}\n\n";

Výstupem takového skriptu pak je např:

== prosinec ==
{|
| [[Sny/Databáze/Kychot/2008-12-01|2008-12-01]] || (Ne/Po) ||
|-
| [[Sny/Databáze/Kychot/2008-12-02|2008-12-02]] || (Po/Út) ||
|-
| [[Sny/Databáze/Kychot/2008-12-03|2008-12-03]] || (Út/St) ||
|-
| [[Sny/Databáze/Kychot/2008-12-04|2008-12-04]] || (St/Čt) ||
|-
| [[Sny/Databáze/Kychot/2008-12-05|2008-12-05]] || (Čt/Pá) ||
|-
| ... atd.
|}

sny-rok.sh

[editovat]

Chceme-li si předem připravit kalendář pro celý rok, můžeme tak učinit např. pomocí jednoduchého skriptíku sny-rok.sh:

for month in 1 2 3 4 5 6 7 8 9 10 11 12
do
    echo $month
    perl -w ./sny-mesic.pl 'Kychot' 2018 $month >> sny-Kychot-2018.txt
done