Avatar billede nicholas_nielsen Nybegynder
25. februar 2003 - 15:42 Der er 38 kommentarer og
1 løsning

Crontab

Hej

Jeg har et mindre problem, som er ved at gå mig MEGET på nerverne, så jeg håber der er nogle der kan hjælpe.

Det er på HP-UNIX 11.11 og 11.20.

Når jeg i et shell script, hvor en text fil skal appendes til en anden, f.eks;

textfil1.log >> textfil2.log

Sker der ingen ting, laver jeg en;

textfil1.log > textfil2.log

Kan jeg se at filen er blevet "ændret" men du uden at der er sket noget, køre jeg scriptet fra shellen virker det fint, nogle idéer ??



Mvh Nicholas
Avatar billede simonvalter Praktikant
25. februar 2003 - 15:56 #1
lad mig se din crontab
Avatar billede bollox Nybegynder
25. februar 2003 - 20:29 #2
Øhhh, jeg går ud fra at du skriver 'cat' foran?
  cat textfil1.log >> textfil2.log
Avatar billede simonvalter Praktikant
25. februar 2003 - 20:30 #3
det hjælper at man er aktivt med i sine spm hvis man vil have hjælp.
Avatar billede nicholas_nielsen Nybegynder
25. februar 2003 - 20:35 #4
bollox: ja det er der.

loadet; Jeg skal nok skrive det, men jeg er ikke på arbejde igen før i morgen, derfor har jeg ikke skrevet det.
Men det er mere ellere mindre;
cat textfil1.log >> textfil2.log
Avatar billede simonvalter Praktikant
25. februar 2003 - 20:42 #5
ok ... har du prøvet med et script der gør det samme ..
bla.sh
#!/bin/sh
cat textfil1.log >> textfil2.log
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 09:11 #6
Crontab entryen ser sådan her ud;

* * * * * /home/omc/scripts/NIC/cgw/stat_mail.sh > /home/omc/scripts/NIC/cgw/stat_mail.log

Det som jeg ikke få til at virke i scriptet;
cat /home/omc/scripts/NIC/cgw/pending_information_abcgw01.txt > final_stat.txt
cat /home/omc/scripts/NIC/cgw/pending_information_abcgw02.txt >> final_stat.txt

Mvh Nicholas
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 09:58 #7
ups....

jeg var faktisk lidt galt på den, for nu har jeg fået det til at virke, det var en env fejl lidt tidligere i scriptet, men et andet problem af samme type, kan jeg ikke slippe helt af med, denne her;

/opt/cg/2.0/bin/collectorcli -e queryKPI >> /opt/cg/NIC/pending_information_abcgw01.txt

Af underlige årsager så kommer der intet i text filen, men køre  jeg scriptet i hånden går det fint?!?!
Avatar billede bollox Nybegynder
26. februar 2003 - 12:44 #8
Prøv at skrive umask ud for at se om der kunne være forskel mellem det manuelle script og cron jobbet.
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 13:17 #9
umask?!?! det er jo bare rettigheder på nye filer?!? de er alle som de skal være, men den er sat til 022
Avatar billede segmose Nybegynder
26. februar 2003 - 13:25 #10
Det er ikke noget med at collectorcli udskrives til stderr og ikke
stdout og >> derfor ikke får fat i det?

Eller har du omdiregeret alt output til stdout?
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 13:28 #11
Det har jeg faktisk ikke "leget" så meget med, for når jeg bruger kommandoen normalt er stdout jo skærmen, stderr har jeg ikke brug for.

Nu kan det godt være at det er mig der ikke helt kan huske det mere, men når man laver en > er det så ikke stdout man ændre?
Avatar billede segmose Nybegynder
26. februar 2003 - 14:04 #12
jo, netop.

men både stdout og stderr sendes til consolen når du køre det manuelt men
stderr rediregeres ikke (på de system jeg kender) med > eller >> der skulle
man lave enten en rediregring af stdout eller lave en krusedulle for at
få stderr med, men der er meget lang tid siden jeg rode med dette så der er
ikke sikkert der er aktuelt længere, jeg mener at kunne huske man skulle gøre
noget med

progx 2> textfil.

for at omdiregere stderr (2) til stdout (1).
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 14:09 #13
Weeee der fik jeg faktisk lidt ud af det, for når jeg flytter stderr får jeg denne fejl:

/usr/lib/dld.sl: Can't open shared library: /home1/beadev/WLE51rp/bld/lib/libgp.sl
/usr/lib/dld.sl: No such file or directory

Har dog INGEN ide hvad jeg skal gøre ved den...

Jeg er godt klar over at 2> er stderr, men hvad er 2>&1 så??
Avatar billede mfalck Praktikant
26. februar 2003 - 14:13 #14
2>&1 piper output fra stderr over i samme som stdout.

det ser ud som om du har problemer med dit enviroment når du kører cron-jobbet.
Avatar billede mfalck Praktikant
26. februar 2003 - 14:15 #15
det er nok noget rettighedsfnidder med: /home1/beadev/WLE51rp/bld/lib/libgp.sl
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 14:15 #16
Så langt er jeg også kommet, men jeg har lavet denne ;

/usr/lib/builtins/source /opt/cg/.cshrc

Den skulle jo gerne indlæse alle mine enviroment's
Avatar billede mfalck Praktikant
26. februar 2003 - 14:17 #17
jeg tror ikke den bliver kørt når det kører i crontab - evt skal du sætte det ind først
(/usr/lib/builtins/source /opt/cg/.cshrc; /opt/cg/2.0/bin/collectorcli -e queryKPI >> /opt/cg/NIC/pending_information_abcgw01.txt 2>>&1)
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 14:18 #18
Det er faktisk lidt underlig, for /home1/beadev/WLE51rp/bld/lib/libgp.sl er slet ikke der, den er her;

/opt/cg/wlepatch/lib/libgp.sl
/opt/wle/lib/libgp.sl
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 14:21 #19
(/usr/lib/builtins/source /opt/cg/.cshrc; /opt/cg/2.0/bin/collectorcli -e queryKPI >> /opt/cg/NIC/pending_information_abcgw01.txt 2>>&1)

Var ellers et godt bud, men det virkede desværre.
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 14:22 #20
UPS....

"Var ellers et godt bud, men det virkede desværre" manglede lige et ikke :-);

"Var ellers et godt bud, men det virkede desværre ikke"
Avatar billede mfalck Praktikant
26. februar 2003 - 14:24 #21
aha - ja det ændrer jo unægteligt lidt på det.

jeg tror at problemet er at du ikke får det udført i en csh men blot en standard shell.
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 14:25 #22
faktisk køre den i ksh, som min shell også er

#!/bin/ksh
Avatar billede mfalck Praktikant
26. februar 2003 - 14:25 #23
prøv evt at smide en

printenv >> /tmp/envout 2>&1

i crontabben så kan du se hvilken shell du kører.
Avatar billede mfalck Praktikant
26. februar 2003 - 14:26 #24
ok - jeg så bare at det var .cshrc så derfor gik jeg ud fra det var csh ...
Avatar billede mfalck Praktikant
26. februar 2003 - 14:27 #25
nu kunne jeg se at det var noget Weblogic - det er ikke et javaprogram du forsøger at eksekvere ?
Avatar billede mfalck Praktikant
26. februar 2003 - 14:29 #26
ellers prøv i dit shellscript at sætte:

LD_PRELOAD=/opt/wle/lib/libgp.sl
export LD_PRELOAD
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 14:29 #27
Det ved jeg faktisk ikke, men laver jeg en file på den, får jeg dette svar

abcgw01:/opt/cg/NIC#file /opt/cg/2.0/bin/collectorcli
/opt/cg/2.0/bin/collectorcli: PA-RISC2.0 shared executable dynamically linked -not stripped

Hvis det er noget du bliver klogere af :-)
Avatar billede mfalck Praktikant
26. februar 2003 - 14:30 #28
eller:
LD_LIBRARY_PATH =/opt/wle/lib/libgp.sl
export LD_LIBRARY_PATH
Avatar billede mfalck Praktikant
26. februar 2003 - 14:31 #29
ja ok - det er et oversat program

prøv lige at lave en

ldd /opt/cg/2.0/bin/collectorcli
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 14:32 #30
Den kommer så her:

abcgw01:/opt/cg/NIC#ldd /opt/cg/2.0/bin/collectorcli
        /usr/lib/libdld.2 =>    /usr/lib/libdld.2
        /usr/lib/libc.2 =>      /usr/lib/libc.2
        /usr/lib/libdld.2 =>    /usr/lib/libdld.2
        /usr/lib/libc.2 =>      /usr/lib/libc.2
        /usr/lib/libcl.2 =>    /usr/lib/libcl.2
        /usr/lib/libisamstub.1 =>      /usr/lib/libisamstub.1
        /usr/lib/libdld.2 =>    /usr/lib/libdld.2
        /usr/lib/libm.2 =>      /usr/lib/libm.2
        /usr/lib/libCsup.2 =>  /usr/lib/libCsup.2
        /usr/lib/libstream.2 => /usr/lib/libstream.2
        /usr/lib/libstd.2 =>    /usr/lib/libstd.2
        /opt/oracle/product/8.1.7/lib/libclntsh.sl.8.0 =>      /opt/oracle/product/8.1.7/lib/libclntsh.sl.8.0
        /usr/lib/libcl.2 =>    /usr/lib/libcl.2
        /usr/lib/libc.2 =>      /usr/lib/libc.2
        /usr/lib/libm.2 =>      /usr/lib/libm.2
        /usr/lib/libdld.2 =>    /usr/lib/libdld.2
        /usr/lib/libnss_dns.1 =>        /usr/lib/libnss_dns.1
        /usr/lib/libdld.2 =>    /usr/lib/libdld.2
        /usr/lib/libnsl.1 =>    /usr/lib/libnsl.1
        /usr/lib/libxti.2 =>    /usr/lib/libxti.2
        /usr/lib/libpthread.1 =>        /usr/lib/libpthread.1
        /usr/lib/librt.2 =>    /usr/lib/librt.2
        /opt/oracle/product/8.1.7/lib/libwtc8.sl =>    /opt/oracle/product/8.1.7/lib/libwtc8.sl
        /usr/lib/libc.2 =>      /usr/lib/libc.2
        /opt/wle/lib/libgp.sl =>        /opt/wle/lib/libgp.sl
        /usr/lib/libnsl.1 =>    /usr/lib/libnsl.1
        /opt/wle/lib/libnative.sl =>    /opt/wle/lib/libnative.sl
        /home1/beadev/WLE51rp/bld/lib/libgp.sl =>      /opt/wle/lib/libgp.sl
        /home1/beadev/WLE51rp/bld/lib/libqm.sl =>      /opt/wle/lib/libqm.sl
        /home1/beadev/WLE51rp/bld/lib/libtmib.sl =>    /opt/wle/lib/libtmib.sl
        /home1/beadev/WLE51rp/bld/lib/libbuft.sl =>    /opt/wle/lib/libbuft.sl
        /home1/beadev/WLE51rp/bld/lib/libtux2.sl =>    /opt/wle/lib/libtux2.sl
        /home1/beadev/WLE51rp/bld/lib/libtux.sl =>      /opt/wle/lib/libtux.sl
        /home1/beadev/WLE51rp/bld/lib/libfml.sl =>      /opt/wle/lib/libfml.sl
        /home1/beadev/WLE51rp/bld/lib/libfml32.sl =>    /opt/wle/lib/libfml32.sl
        /home1/beadev/WLE51rp/bld/lib/libicbgp.sl =>    /opt/wle/lib/libicbgp.sl
        /home1/beadev/WLE51rp/bld/lib/libgp.sl =>      /opt/wle/lib/libgp.sl
        /home1/beadev/WLE51rp/bld/lib/libpif.sl =>      /opt/wle/lib/libpif.sl
        /home1/beadev/WLE51rp/bld/lib/libengsec.sl =>  /opt/wle/lib/libengsec.sl
        /home1/beadev/WLE51rp/bld/lib/liborbpoa.sl =>  /opt/wle/lib/liborbpoa.sl
        /usr/lib/libc.2 =>      /usr/lib/libc.2
        /home1/beadev/WLE51rp/bld/orb//bld//liborb.sl =>        /opt/wle/lib/liborb.sl
        /usr/lib/libc.2 =>      /usr/lib/libc.2
        /home1/beadev/WLE51rp/bld/orb//bld//liborbutl.sl =>    /opt/wle/lib/liborbutl.sl
        /home1/beadev/WLE51rp/bld/lib//libgp.sl =>      /opt/wle/lib/libgp.sl
        /home1/beadev/WLE51rp/bld/lib/liborb.sl =>      /opt/wle/lib/liborb.sl
        ../../libomg/libomg.sl =>      /opt/wle/lib/libomg.sl
        /home1/beadev/WLE51rp/bld/lib/liborb.sl =>      /opt/wle/lib/liborb.sl
        ../../libenv/libenv.sl =>      /opt/wle/lib/libenv.sl
        /home1/beadev/WLE51rp/bld/lib/libicbgp.sl =>    /opt/wle/lib/libicbgp.sl
        /home1/beadev/WLE51rp/bld/lib/liborb.sl =>      /opt/wle/lib/liborb.sl
        /home1/beadev/WLE51rp/bld/lib/libomg.sl =>      /opt/wle/lib/libomg.sl
        /opt/wle/lib/libenv.sl =>      /opt/wle/lib/libenv.sl
        /opt/wle/lib/libicbgp.sl =>    /opt/wle/lib/libicbgp.sl
        /opt/wle/lib/liborbutl.sl =>    /opt/wle/lib/liborbutl.sl
        /opt/wle/lib/liborb.sl =>      /opt/wle/lib/liborb.sl
        /opt/wle/lib/libomg.sl =>      /opt/wle/lib/libomg.sl
Avatar billede mfalck Praktikant
26. februar 2003 - 14:37 #31
ok - det var en hulens masse biblioteker den refererer til. Mit gæt er at det skal sættes om så den kører det korrekt;
nu bliver jeg lidt mere spekulativ;
prøv i crontab:
su <dit login> -c "/opt/cg/2.0/bin/collectorcli -e queryKPI >> /opt/cg/NIC/pending_information_abcgw01.txt 2>>&1"
Avatar billede mfalck Praktikant
26. februar 2003 - 14:38 #32
husk også at alle meddelser som ikke bliver omdirigeret i crontab bliver mailet til root
Avatar billede mfalck Praktikant
26. februar 2003 - 14:39 #33
su <dit login> -c "/opt/cg/2.0/bin/collectorcli -e queryKPI >> /opt/cg/NIC/pending_information_abcgw01.txt 2>>&1" > /tmp/out 2> /tmp/err

så kan vi se om der går noget galt.
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 14:45 #34
nope ingen held her, det var ellers en OK ide. men jeg kan se at den smider et core dump hver gang;
abcgw01:/opt/cg#file core
core:          core file from 'collectorcli' - received SIGABRT
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 15:05 #35
Weeeee jeg har selv løst den nu, jeg fandt en .sh fil med alle enviroment, dem impoterede jeg så;

. /opt/cg/2.0/bin/setenv.sh

Men jeg vil faktisk gerne have en forklaring på hvorfor det er at der skal være mellemrum efter "." for at det virker, jeg har bare fået at vide at det skal der, men det var jo ikke en særlig god forklaring...

PS: vil du have svar points for denne kan du bare svare på dette, så skal jeg nok godkende :-)
Avatar billede mfalck Praktikant
26. februar 2003 - 15:17 #36
så vidt jeg husker er . og source er det samme (prøv evt at se man source).

af ren nysgerrighed ville jeg så gerne høre hvor I bruger hp-ux henne (det eneste andet sted jeg kender det fra er datalogisk insitut :-) ).
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 15:21 #37
Det er hos Sonofon, Nokia lever alt med HP platforme.
Avatar billede nicholas_nielsen Nybegynder
26. februar 2003 - 15:22 #38
hov, glemte da at sige tak for hjælpen :-) så.... tak for hjælpen :-)
Avatar billede mfalck Praktikant
26. februar 2003 - 15:22 #39
ok ... :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester