• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Script automatisches Kopieren funktioniert nicht

Hallo,

ich denke, daß folgendes Script ziemlich selbsterklärend ist. Dieses wird nachts von Cron automatisch gestartet und soll die Datei vom gestrigen Tag kopieren. Um an den Dateinamen zu kommen, wird der Befehl date genutzt. Problem ist nur, daß es nicht funktioniert.

Code:
cp: cannot stat `/home/data/28-04-2008.dat': No such file or directory

Die fragliche Datei existiert aber. Ich bin daher ziemlich ratlos.

Code:
#!/bin/sh

# Datum von gestern
day=$(/bin/date -d y +%d)
month=$(/bin/date -d y +%m)
year=$(/bin/date -d y +%Y)

destination=/var/www/SoDA/data/ALT$year
filename=$day-$month-$year

# Überprüft, ob das Zielverzeichnis existiert und erstellt es gegebenenfalls
[ -d $destination ] || (mkdir $destination)

# Kopiert die gestrige Datei ins Zielverzeichnis und ändert dabei die Dateiendung
cp /home/data/$filename.dat $destination/$filename.SOL
 
Also laut cp existiert die Datei nicht.

Führe mal folgendes aus:

Code:
find /home/data -maxdepth 1 -name \*dat\*

und poste die Ausgabe. In dem Script ist so weit wie ich das sehe kein Fehler drin. Stimmen die Zugriffsrechte?
 
http://phpfi.com/313335

Zugriffsrechte sind erstmal so, wie sie standardmäßig bei mount.cifs gegeben sind.

Code:
-rwxrwSrwt 1 root root   15442 2008-01-01 22:56 01-01-08.dat

Manuelles Kopieren geht aber problemlos.
 
Wenn ich mir einmal den Dateinamen in der Fehlermeldung ansehe und dann den Dateinamen im 'ls', dann fällt mir auf, das das Jahr im Dateinamen einmal zweistellig und einmal vierstellig ist ......
Überprüfe doch mal, ob Du wirklich die gleichen Dateinamen verwendest.
 
:oops: Das wars tatsächlich. Meistens sind es ja solche Fehler, aber daß mir das nicht selber aufgefallen ist. :oops:
Na, wenigstens gehts jetzt. Danke.
 
Oben