58) pluvio1.sh -- nekaj casa sem poganjal /home/vikar/programi/pluvio1.sh, ki avtomatsko zazene program /home/vikar/programi/v_pluvi_za_id_tip.pl, ki prebere podatke iz recimo /db/baza_home/VNOS/PO5/a00192008.po5 nato izbrise podatke iz tabele pluviografi_vhodna in vanjo skopira podatke iz /home/vikar/programi/pluv_za_tipv.txt #!/bin/sh # procedura za polnjenje tabele pluviografi_vhodna # najprej prebere ascii podatke jih prenese v pluv_za_tipv.txt # in nato delita iz tabele in napolni nove #date -d "-1 month" +"%m %Y" datum1=$(date -d "-5 month" +"%m %Y") #mesec leto recimo 01 2008 datum2=$(date -d "-1 month" +"%m %Y") #mesec leto recimo 06 2008 # sledita datuma za delete iz tabel pluviografi_vhodna datumz=$(date -d "-5 month" +"%Y-%m") datumk=$(date -d "-0 month" +"%Y-%m") # datum konca bo prvi v nas. mesecu <$datumk datumz=$datumz"-1" datumk=$datumk"-1" "$datumz $datumk" # samo testni izpis mv /home/vikar/programi/pluv_za_tipv.txt /home/vikar/programi/pluv_za_tipv_old.txt #preimenujem rm /home/vikar/programi/pluv_za_tipv.txt #unicim # ./v_pluvi_za_id_tip.pl mes1 leto1 mesec2 četo2 postaja1 postaj2 # recimo ./v_pluvi_za_id_tip.pl 1 2008 3 2008 1 900 cd /home/vikar/programi /home/vikar/programi/v_pluvi_za_id_tip.pl $datum1 $datum2 1 900 #> a.a export PGUSER="baza" export PGPASSWORD="mis82kec" # spodaj delitam iz tabele pluviografi_vhodna, kar bom se enkrat dal not QUERY="delete from pluviografi_vhodna where tip='17' and datum>='$datumz'and datum<'$datumk'" # psql ameba -U baza -h pojavi -P footer -P null=null -c "$QUERY" PSQL=/usr/local/pgsql/bin/psql # potrebno je navesti celotno pot do psql $PSQL ameba -c "$QUERY" $PSQL ameba -c "\\copy pluviografi_vhodna from '/home/vikar/programi/pluv_za_tipv.txt' using delimiters '|'" # konec shell-a -------------------- 59) [vikar@pojavi programi]$./pluvio_pl.sh ki pozene program v_pluvi_dc.pl, ki sama vse naredi za zadnjih 5 mesecev crontabeli ali rocno zazenem [vikar@pojavi programi]$./pluvio_pl.sh ali ali (previdno!!!!!!) [vikar@pojavi programi]$ ./v_pluvi_dc.pl mes1 leto1 mesec2 četo2 postaja1 postaj2 recimo od jan 2008 do marca 2008 je primer spodaj [vikar@pojavi programi]$ ./v_pluvi_dc.pl 1 2008 3 2008 1 900 #!/bin/sh # procedura za polnjenje tabele pluviografi_vhodna # najprej prebere ascii podatke jih prenese v pluv_za_tipv.txt # in nato delita iz tabele in napolni nove #date -d "-1 month" +"%m %Y" datum1=$(date -d "-5 month" +"%m %Y") #mesec leto recimo 01 2008 datum2=$(date -d "-0 month" +"%m %Y") #mesec leto recimo 06 2008 # sledita datuma za delete iz tabel pluviografi_vhodna datumz=$(date -d "-5 month" +"%Y-%m") datumk=$(date -d "-0 month" +"%Y-%m") # datum konca bo prvi v nas. mesecu <$datumk datumz=$datumz"-1" datumk=$datumk"-1" "$datumz $datumk" # samo testni izpis mv /home/vikar/programi/pluv_za_tipv.txt /home/vikar/programi/pluv_za_tipv_old.txt #preimenujem rm /home/vikar/programi/pluv_za_tipv.txt #unicim # ./v_pluvi_dc.pl mes1 leto1 mesec2 četo2 postaja1 postaj2 # recimo ./v_pluvi_dc.pl 1 2008 3 2008 1 900 cd /home/vikar/programi /home/vikar/programi/v_pluvi_dc.pl $datum1 $datum2 1 999 #> a.a # konec shell-a --- zagon v crontable vsakega 17. v nesecu ob 3h 50 min in 28. ob 3h 50 min 50 3 17 * * /home/vikar/programi/pluvio_pl.sh >/home/zvicar/sql_vhodne/pluvio_pl.log 2>/home/zvicar/sql_vhodne/pluvio_pl.sh 50 3 28 * * /home/vikar/programi/pluvio_pl.sh >/home/zvicar/sql_vhodne/pluvio_pl.log 2>/home/zvicar/sql_vhodne/pluvio_pl.sh