daniel: OT: linux und cronjobs

hallo alle zusammen,

ich weiß, es ist hier eigentlich OT, aber ich komm einfach nicht weiter... vielleicht kann mir ja jemand helfen?

ich versuche unter suse 8.0 eine apache-log datei wegzuschreiben und ihr dabei noch das aktuelle datum anzuhängen.

das ganze soll per cronjob passieren.

der eintrag in der entsprechenden crontab:

#!/bin/bash
* 20 30 * * cp /var/log/httpd/intra_net/it_log /var/log/httpd/history/it_log_old$(date +"%d-%m-%y")

das komische ist, wenn ich diesen befehl direkt über die shell aufrufe, klappt das prima - als cronjob bemkomme ich folgende fehlermeldung:

/bin/sh: -c: line 1: unexpected EOF while looking for matching `"'
/bin/sh: -c: line 2: syntax error: unexpected end of file

irgendwas mit der schreibweise...???? aber was????

vielen dank für euer verständnis (für das OT)
und vielen dank im voraus...

grüße,
daniel

  1. Hi Daniel,

    #!/bin/bash
    * 20 30 * * cp /var/log/httpd/intra_net/it_log /var/log/httpd/history/it_log_old$(date +"%d-%m-%y")

    Ein kurzer Workaround, der vieleicht hilft - ohne viel herumzuprobieren...

    Schreibe die Zeile mit den Befehlen in ein eigenes Shellscript , mach es ausführbar (teste, ob der Aufruf der Datei selber das gewünschte Ergebnis bringt) und gib den Dateinamen im crontab an.

    Ansonsten bin ich mir nicht sicher, ob man das "#! /bin/bash" in einer crontab angeben darf/kann.

    Eigentlich blöde Frage, aber du hast den cronjob schon mit crontab -e erstellt?

    Viel Glück:

    Tobias

    1. hi,

      danke für die antwort. der cronjob an und für sich klappt hervorragend - sind noch ein paar andere sachen drin, die auch keine probleme machen.

      aber die idee mit dem eigenen script war gut ;-)

      habe den befehl jetzt in ein  eigenes script geschrieben, und rufe das aus dem cronjob aus auf.

      das wiederrum klappt prima !

      danke !!!

      grüße,
      daniel