script per Cronjob ausführen

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von bigbee, 24.08.2010.

  1. bigbee

    bigbee Grünschnabel

    Dabei seit:
    24.08.2010
    Beiträge:
    9
    Zustimmungen:
    0
    Guten Tag,

    ich habe das Problem, dass ein Batch Script von mir per Crontab ausgeführt nciht das macht was er soll.
    Wenn ich den gleichen Script jedoch manuell ausführe funktioniert er prima.

    Hier der Eintrag in der Crontab [/etc/crontab]:
    Code:
    0 3 * * * root /srv/www/htdocs/html/mandate/static/update
    wenn ich mich im verzeichnis /etc/ befinde und dann
    Code:
    /srv/www/htdocs/html/mandate/static/update
    eintippe funktioniert es.

    Hier der Script selber:
    Code:
    #!/bin/bash
    cd /srv/www/htdocs/html/mandate/static/
    ./static_blabla1
    ./static_blabla2
    
    "blabla2" ist dabei der Script der nicht richtig ausgeführt wird. Hier dessen inhalt:
    Code:
    #!/bin/bash
    
    rm -R ./abc/*
    cd abc
    wget -p -l inf -k -r  -nH -B http://domainname.com/mandate/abc/ --cut-dir=2 -E http://domainname.com/mandate/abc/
    sed -i 's/ABQIAAAABDPEoQWZY4irqrQaZFVT4cYBrvdQavsZ2GWFSNrbll2xT3x8Jgek5SmfX7C2dachZ_xJneRA/ABQIAAAABDPEoQWZY4irqrQaZFVT4BTx8KUJwBySggmPXdHks03p64Wgzuh8fsnfz0lpfwTNW3A/g' ./startseite-kontakt/anfahrt.html
    mv index.html index2.html
    cd ..
    mkdir ./abc/cache
    mkdir ./abc/upload
    mkdir ./abc/images
    mkdir ./abc/js
    cp -R /srv/www/htdocs/html/mandate/abc/js/* ./abc/js/
    cp -R /srv/www/htdocs/html/mandate/abc/images/* ./abc/images/
    cp -R /srv/www/htdocs/html/mandate/abc/cache/* ./abc/cache/
    cp -R /srv/www/htdocs/html/mandate/abc/upload/* ./abc/upload/
    cd abc
    wput ./* ftp://beutzer:pw@domain2.de
    cd ..
    
    Der Script soll einfach aus einer dynamischen Seite die mittels eines CMS-Systems generiert wurde, eine statische Seite mit html Seiten machen und diese auf einen Anderen Server hochladen.
    Per Crontab ausgeführ, entsteht in einigen Seiten kaudawelsch, da steht dann anstatt "Adventsausstellung" plötzlich "Adventsausstelluhre". Dieser sed Befehl selber der die Google-Api austauscht funktioniert allerdings gut.

    Vielleicht habt ihr ja eine Idee, wieso das nicht richtig klappt??

    Gruß BigBee
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Du darfst nicht davon ausgehen, dass das CWD /etc ist, wenn das Skript von cron ausgefuehrt wird. Du solltest in allen beteiligten Skripten unbedingt mit absoluten Pfaden arbeiten!

    root sollte eigentlich eine Email bekommen haben, wenn das Skript mit einem Fehler endet, allerdings habe ich es mir nicht so genau angeschaut, kann ja sein, dass es zu keinem Fehler kommt, wenn man sich nicht in /etc/ befindet, sondern einfach nur nichts macht.
     
  4. #3 bigbee, 24.08.2010
    Zuletzt bearbeitet: 25.08.2010
    bigbee

    bigbee Grünschnabel

    Dabei seit:
    24.08.2010
    Beiträge:
    9
    Zustimmungen:
    0
    /srv/www/htdocs/html/mandate/static/update ist doch ein vollständiger Pfad. Diese "wenn ich mich im verzeichnis /etc befinde und..." hätte ich auch weglassen können. Egal wo ich mich befinde, der Script funktioniert, wenn ich ihn manuell ausführe! Kann es sein, dass dieses wget irgendwie Probleme hat wenn es per crontab ausgeführt wird?

    EDIT: der fehler scheint beim hochladen zu liegen. Ich habe mal die Mails die der/die/das shell mir geschickt hat durchgeguckt und beim ftp befehl steht als kommentar "[stripped 2k]". Wie kann ich dafür sorgen, dass das nicht passiert? Bzw. wodran liegt das?

    Vielen Dank,

    bigbee
     
Thema:

script per Cronjob ausführen

Die Seite wird geladen...

script per Cronjob ausführen - Ähnliche Themen

  1. Bräuchte Hilfe bei Backupscript mittels Bash und cronjob

    Bräuchte Hilfe bei Backupscript mittels Bash und cronjob: Es soll für bestimmte Ordner Archivierung aller Dateien(Logfiles), die älter als 30 Tage sind machen. Am besten einmal täglich nachts irgendwann....
  2. script wird von cronjob nicht korrekt ausgeführt - Centos 5

    script wird von cronjob nicht korrekt ausgeführt - Centos 5: Guten Morgen, und hallo ins Forum. Ich habe ein Problem mit meinem Sicherungsserver: ich möchte zur täglichen inkrimentellen Sicherung...
  3. script wird als cronjob anders ausgeführt

    script wird als cronjob anders ausgeführt: Hallo Leute Ich bin neu hier und Scriptanfänger, habe aber von Programmieren (vorw. JAVA) berufliche Erfahrung. Nun zum Problem; ich hab...
  4. script mit topas ausgabe als cronjob

    script mit topas ausgabe als cronjob: hallo experten, ich bin leider mit meinem latein am ende und hoffe hier unter euch profis auf eine lösung zu kommen. problem: ich habe ein...
  5. emails-senden aus Script, das in Cronjob eingebunden ist

    emails-senden aus Script, das in Cronjob eingebunden ist: :hilfe2: Ich habe folgendes Problem: Ich habe ein Shell-Script geschrieben, welches eine Replikation zwischen verschiedenen Maschinen...