Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

script+cronjob : Wo muss ich den Fehler suchen?

Alles rund um die verschiedenen Konsolen und shells sowie die Programmierung unter Linux

Moderator: Moderatoren

Spikitux
Newbie
Newbie
Beiträge: 14
Registriert: 12. Okt 2016, 06:41

script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von Spikitux » 12. Okt 2016, 06:43

Hallo (X) ich habe folgendes Script(1) in crontab aufgenommen >>>

Code: Alles auswählen

#!/bin/bash -e
# mkdir '/home/internet/Downloads/Bilder'

cp -u -r '/home/internet/Bilder' '/home/internet/Downloads/Bilder'

# mkdir '/home/internet/Downloads/Musik'
cd '/home/internet/Musik'
cp -u -r * '/home/internet/Downloads/Musik'
# mkdir '/home/internet/Downloads/Videos'
cd '/home/internet/Videos'
cp -u -r '/home/internet/Videos' '/home/internet/Downloads/Videos'
# mkdir '/home/internet/Downloads/Dokumente'
cd '/home/internet/dwhelper'
cp -u -r '/home/internet/Dokumente' '/home/internet/Downloads/Dokumente'
# mkdir '/home/internet/Downloads/dwhelper'
cp -u -r '/home/internet/dwhelper' '/home/internet/Downloads/dwhelper'
# mkdir '/home/internet/Downloads/bash_history'
cp '/home/internet/.bash_history' '/home/internet/Downloads/bash_history'
cd '/home/internet/Schreibtisch/Strom-Gas/'
cp -u -r * '/home/internet/Downloads/Strom-Gas'
cd '/home/internet/.mozilla/'
cp -u -r * '/home/internet/.mozilla' '/home/internet/Downloads/'
cd '/home/internet/.thunderbird/'
cp - u -r * '/home/internet/.thunderbird' '/home/internet/Downloads/'

find '/home/internet/Downloads/' -type d -exec chmod -R 0777 {} +
#find '/home/i/Downloads/' -type d -exec chmod a+rwx {} +
________________________________________________________________________
meine crontab >>>
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
#
*/1 * * * * echo 'vor' >> '/home/internet/Schreibtisch/Downloads/Strom-Gas/2016/Oktober/vor.txt' && '/home/internet/Schreibtisch/migration2.sh' && echo 'nach' >> '/home/internet/Schreibtisch/Downloads/Strom-Gas/2016/Oktober/nach.txt'

#> /dev/null 2>&1
#
#h dom mon dow command
die Datei vor.txt wird erstellt!
die Datei nach.txt wird nicht erstellt.
Was daufhindeutet das das obige Scrip(1) nicht abgearbeitet wird.
Wo muss ich den Fehler suchen?
Zuletzt geändert von gehrke am 12. Okt 2016, 07:44, insgesamt 1-mal geändert.
Grund: Bitte zukünftig <code>-Tags verwenden - http://linux-club.de/forum/viewtopic.php?f=92&t=105750

Werbung:
marce
Advanced Hacker
Advanced Hacker
Beiträge: 1005
Registriert: 19. Jun 2008, 13:16
Wohnort: Dettenhausen
Kontaktdaten:

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von marce » 12. Okt 2016, 08:24

&& führt den nächsten Befehl nur aus, wenn der vorige mit einem Return-Code von 0 beendet wurde.

Vermutlich liegt also ein Fehler im Script vor - ich würde mal auf diese Zeile tippen:

Code: Alles auswählen

cp - u -r * '/home/internet/.thunderbird' '/home/internet/Downloads/'
Übrigens ist eine Cron-Zeile von */1 * * * * bei evtl. längeren Kopierjobs evtl. nicht sonderlich "glücklich"

Spikitux
Newbie
Newbie
Beiträge: 14
Registriert: 12. Okt 2016, 06:41

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von Spikitux » 12. Okt 2016, 14:57

@marce
Das nehme ich auch an, das die Zeile defekt ist, aber wie macht man es richtig?

uhelp
Member
Member
Beiträge: 82
Registriert: 25. Nov 2012, 19:33

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von uhelp » 12. Okt 2016, 15:23

Ich würde mal statt echo das Resultat von which echo einsetzen. Analog für alle anderen Commands auch.
Absolute Pfade machen das Leben als "nobody" einfacher.

Spikitux
Newbie
Newbie
Beiträge: 14
Registriert: 12. Okt 2016, 06:41

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von Spikitux » 12. Okt 2016, 15:42

Hallo ich hatte es jetzt mit den absoluten Pfaden gemacht >>>
*/1 * * * * /bin/echo 'vor' >> '/home/internet/Schreibtisch/Downloads/Strom-Gas/2016/Oktober/vor.txt' || '/home/internet/Schreibtisch/migration2.sh' || /bin/echo 'nach' >> '/home/internet/Schreibtisch/Download..
Nur kopiert hat das Script (cronjob) weiterhin nicht.

marce
Advanced Hacker
Advanced Hacker
Beiträge: 1005
Registriert: 19. Jun 2008, 13:16
Wohnort: Dettenhausen
Kontaktdaten:

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von marce » 12. Okt 2016, 15:44

Spikitux hat geschrieben:@marce
Das nehme ich auch an, das die Zeile defekt ist, aber wie macht man es richtig?
indem man die Syntax beachtet, z.B. keine Leerzeichen dahin macht, wo keine hingehören?

uhelp
Member
Member
Beiträge: 82
Registriert: 25. Nov 2012, 19:33

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von uhelp » 12. Okt 2016, 16:37

Nu ja, jetzt verkettest du die Befehle mit einem logischen nicht.

Code: Alles auswählen

someCommand && echo "executed properly"  ||  echo "\"someCommand\" did not return zero."
Also wurde der erste Echo-Befehl immerhin erfolgreich ausgeführt, und der Rest dann logischerweise nicht.

Spikitux
Newbie
Newbie
Beiträge: 14
Registriert: 12. Okt 2016, 06:41

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von Spikitux » 13. Okt 2016, 05:32

Ich habe es jetzt in der crontab so gemacht

Code: Alles auswählen

*/1 * * * *  /bin/echo 'vor' >> '/home/internet/Schreibtisch/Downloads/Strom-Gas/2016/Oktober/vor.txt' && '/home/internet/Schreibtisch/migration2.sh' && /bin/echo 'nach' >> '/home/internet/Schreibtisch/Download/nach.txt
aber kopieren tut es immer noch nicht.

marce
Advanced Hacker
Advanced Hacker
Beiträge: 1005
Registriert: 19. Jun 2008, 13:16
Wohnort: Dettenhausen
Kontaktdaten:

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von marce » 13. Okt 2016, 07:53

Hast Du denn den Syntax-Fehler beseitigt? Läuft das Script außerhalb von cron fehlerfrei?

Spikitux
Newbie
Newbie
Beiträge: 14
Registriert: 12. Okt 2016, 06:41

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von Spikitux » 13. Okt 2016, 08:13

Code: Alles auswählen

'/home/internet/Schreibtisch/migration2.sh' 
/bin/cp: Aufruf von stat für »-“ nicht möglich: Datei oder Verzeichnis nicht gefunden
/bin/cp: Aufruf von stat für »u“ nicht möglich: Datei oder Verzeichnis nicht gefunden
Ich nehme mal es gibt weiterhin fehler

marce
Advanced Hacker
Advanced Hacker
Beiträge: 1005
Registriert: 19. Jun 2008, 13:16
Wohnort: Dettenhausen
Kontaktdaten:

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von marce » 13. Okt 2016, 08:22

Dann mach den Fehler mal weg. Wetten, daß es dann tut?

Und das wie - wurde hier schon erwähnt. Mehrfach.

Oh man.

Spikitux
Newbie
Newbie
Beiträge: 14
Registriert: 12. Okt 2016, 06:41

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von Spikitux » 13. Okt 2016, 10:56

Leerzeichen sind nur an der passenden Stellen.

marce
Advanced Hacker
Advanced Hacker
Beiträge: 1005
Registriert: 19. Jun 2008, 13:16
Wohnort: Dettenhausen
Kontaktdaten:

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von marce » 13. Okt 2016, 10:58

Code: Alles auswählen

/bin/cp: Aufruf von stat für »-“ nicht möglich: Datei oder Verzeichnis nicht gefunden
sagt aber was anderes.
Und ganz ehrlich - die Erfahrung der letzten Jahre sagt, daß in den Fällen meist der Computer Recht hat.

Spikitux
Newbie
Newbie
Beiträge: 14
Registriert: 12. Okt 2016, 06:41

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von Spikitux » 13. Okt 2016, 11:06

Code: Alles auswählen

/bin/cp -u -r  '/home/internet/Schreibtisch/Strom-Gas/''/home/internet/Downloads/Strom-Gas/' 
/bin/cp: Fehlender Zieldatei‐Operand hinter »/home/internet/Schreibtisch/Strom-Gas//home/internet/Downloads/Strom-Gas/“
Jetzt habe ich den Space entfernt sonst garnicht, aber wieder Fehler

marce
Advanced Hacker
Advanced Hacker
Beiträge: 1005
Registriert: 19. Jun 2008, 13:16
Wohnort: Dettenhausen
Kontaktdaten:

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von marce » 13. Okt 2016, 11:14

... und jetzt noch an der richtigen Stelle einen rein.

Tipp: Quelle und Ziel sollte man schon unterscheiden können im Parameter-String.

Fehlermeldungen lesen und verstehen sollte man schon versuchen.

uhelp
Member
Member
Beiträge: 82
Registriert: 25. Nov 2012, 19:33

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von uhelp » 13. Okt 2016, 12:23

Setze bei der Quelle nach dem abschließenden Slash ein Sternchen.
Mit Sternchen ist immer gut.

Spikitux
Newbie
Newbie
Beiträge: 14
Registriert: 12. Okt 2016, 06:41

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von Spikitux » 13. Okt 2016, 12:29

Code: Alles auswählen

/bin/cp -r '/home/internet/Schreibtisch/Strom-Gas/*' '/home/internet/Downloads/Strom-Gas' 
Das habe ich gemacht, kopiert immer noch nicht.

marce
Advanced Hacker
Advanced Hacker
Beiträge: 1005
Registriert: 19. Jun 2008, 13:16
Wohnort: Dettenhausen
Kontaktdaten:

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von marce » 13. Okt 2016, 12:33

"es kopiert nicht" ist sicherlich nicht die Fehlermeldung, die Du bekommst.

Spikitux
Newbie
Newbie
Beiträge: 14
Registriert: 12. Okt 2016, 06:41

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von Spikitux » 13. Okt 2016, 13:41

Hallo wenn ich rsync nutze >>>

Code: Alles auswählen

rsync -r 'home/internet/Schreibtisch/Strom-Gas/' '/home/internet/Downloads/Strom-Gas/' 
rsync: change_dir "/home/internet//home/internet/Schreibtisch/Strom-Gas" failed: No such file or directory (2)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1183) [sender=3.1.0]
Was mache ich falsch?

marce
Advanced Hacker
Advanced Hacker
Beiträge: 1005
Registriert: 19. Jun 2008, 13:16
Wohnort: Dettenhausen
Kontaktdaten:

Re: script+cronjob : Wo muss ich den Fehler suchen?

Beitrag von marce » 13. Okt 2016, 13:46

Spikitux hat geschrieben:Was mache ich falsch?
Du liest Deinen eigenen Code nicht aufmerksam durch, ebensowenig die Fehlermeldungen. Zudem solltest Du Dir ein paar Grundlagen bezüglich Quoting, absoluten und relativen Pfaden und Befehls-Syntax aneignen. Zudem würde die Konsultation der Dokumentation nicht schaden.

Außerdem - wieso denn nun bitte rsync?

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste