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

Dateinamen durch kopieren ändern und Datum einfügen

Hi,

ich habe eine Webcam die mir jede Stunde ein Foto macht und in mein Homeverzeichnis legt.
Nun möchte ich per cron die Datei "snapshot.jpg" kopieren und dabei den Namen ändern bzw. die Uhrzeit/Datum des kopierens mit in den Namen übernehmen.
Habe eben mal probiert mit einem script

Code:
#!/bin/sh
cp snapshot.jpg snapshot|date +%T.jpg

funtze aber nicht. Irgendwie will er den Befehl date nicht ausführen.
Das sollte doch grundsätzlich möglich sein oder?
 
Code:
#!/bin/sh
SOURCE_NAME=snapshot
DATE=`date +%x-%X`
FILE_EXTENSION=jpg
#
#
#
SOURCE_FILE=$SOURCE_NAME.$FILE_EXTENSION
DESTINATION_FILE=$SOURCE_NAME-$DATE.$FILE_EXTENSION
echo $SOURCE_FILE "    " $DESTINATION_FILE

Ausgabe:

  • snapshot.jpg snapshot-08.07.2008-00:18:58.jpg
 
DANKE, probier ich gleich mal.
Hatte heute Nacht auch die Idee das mit Variablen zu machen und nicht direkt in einer Zeile.
 
Oder kurz:
Code:
cp snapshot.jpg snapshot$(date "+%T").jpg
oder
Code:
cp snapshot.jpg $(date "+snapshot%T.jpg")
... je nach dem, wie's beliebt.
 
Hi


Du kannst die Files kopieren ...
Code:
for i in $(ls -l *.jpg | awk {'print $8'});do cp $i $(date +%F)-$i ;done


... oder besser gleich umbenennen.
Code:
for i in $(ls -l *.jpg | awk {'print $8'});do mv $i $(date +%F)-$i ;done

Bye! :D


______________________________
6c48bb17872c696ef5dbb24a60f4fbf3
http://lin-x.de
 
Bestimmt kommt gleich wieder jengelh, und sagt, "ls" in "for"-loops sei nicht ok:

http://jengelh.medozas.de/articles/recurring-errors-sh.php

:). Nimm also lieber eine "find"-Konstruktion ...

Gruß
 
abgdf schrieb:
Bestimmt kommt gleich wieder jengelh, und sagt, "ls" in "for"-loops sei nicht ok:

http://jengelh.medozas.de/articles/recurring-errors-sh.php

:). Nimm also lieber eine "find"-Konstruktion ...

Gruß

Das hängt von der Anzahl der in dem Verzeichnis erwarteten *.jpg-Dateien ab. Die Wildcard-Extension funktioniert ab einer bestimmten Anzahl von Dateien nämlich nicht mehr. Mit find klappt das immer.

Ach, sind in dem Link ja noch eine ganze Menge mehr Gründe angegeben.
 
Oben