PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mit find und exec Dateien aus verzeichnis kopieren



benze
18.12.2006, 22:01
Hallo,
ich möchte über eine Schleife aus einer Textdatei Dateinamen auslesen. Diese Dateien sollen auf der Festplatte in einem bestimmten Verzeichnis gesucht werden und an eine bestimmte Stelle kopiert werden.

Dazu habe ich folgendes geschrieben:

#! /bin/bash
#Hier wird die Liste der jpgs erstellt.
# ls *.jpg >liste
bild=""
while read x
do
bild="$x"
#echo Gesuchtes Bild ... $bild
# Der aus der Textdatei eingelesene Dateiname wird gesucht.
find /home/platte1/fotodesign.de/ -name $bild
done < bilder


Soweit so gut. Das klappt.

Jetzt möchte ich aber, dass der Dateiname nicht nur eingelesen und die Datei gesucht wird. Sie soll auch von der Stelle an eine andere kopiert werden.
Dazu würde ich so etwas wie

find /home/platte1/fotodesign.de/ -name $bild -exec cp /home/platte2 {} \;

eingeben. Aber das ist es noch nicht.

Kann mir da jemand vielleicht bitte helfen ?

Ich vermute, dass da die Syntax von dem Befehlteil nach -exec nicht so ganz stimmt.

Vielen Dank.
Christian
.
.
.
EDIT (autom. Beitragszusammenführung) :
.
So, nach einigem herumprobieren, hab ich des Rätsels Lösung gefunden und möchte sie natürlich nicht vorenthalten:

#! /bin/bash
#ls *.jpg >liste
bild=""
while read x
do
bild="$x"
#echo Gesuchtes Bild ... $bild
find /home/platte1/fotodesign.de/ -name $bild -exec cp -v {} /home/platte1/temp \;
done < bilder


Vielleicht kann es jemand gebrauchen.

Have fun.