On Thu, Jun 07, 2001 at 07:15:38PM +0200, Florian Evers wrote:
Hallo Leute!
Ich bin auf ein Problem mit cp gestossen, das ich nicht mit Hilfe von 'man cp' loesen konnte.
Ich wollte alle Dateien meines Home-Verzeichnisses in ein anderes Verzeichnis, z.B. /home/sicher, sicherheitskopieren. Dazu nahm ich den Befehl 'cp -a /home/name/* /home/sicher/'. Dabei wurden jedoch keine unsichtbaren (.name) Dateien mitkopiert! Ich merkte das als KMail meine Mails nicht mehr anzeigen wollte, denn die Indexfiles ~/Mail/.Fach.index wurden nicht mitkopiert!
Ich habe leider keine Schalterkombination gefunden, um *Alles* kopieren zu koennen :( Geht dies mit cp ueberhaupt?
Hallo! Ich würde da schon eher auf eine Lösung mit Perl setzen: <schnipp> # hier steht bei aufruf 'scriptname quelldir zieldir' der suchpfad $dir=@ARGV[0]; # hier steht bei aufruf 'scriptname quelldir zieldir' der zielpfad $newdir=@ARGV[1]; # liest alle files, auch . und .., nach @allfiles opendir (DIR,$dir) || die "can't read dir"; @allfiles=readdir DIR; closedir DIR; # verwirft . shift @allfiles; # verwirft .. shift @allfiles; # jetzt stehen nur noch files im array # hier lese ich das array aus und verschiebe # die einzelnen dateien nach zielpfad foreach $file (@allfiles) { system ("/bin/mv $file $newdir"); } </schnipp> Die Perl-Funktion rename benötigt quelldateinamen und zieldateinamen mit kompletten pfad, daher nehme ich hier /bin/mv, und sie kann nicht über verschiedene Dateisystem kopieren. Mit bisschen mehr Aufwand, lassen sich damit auch ganze Verzeichnisblöcke kopieren. cu Udo -- Mail: samfire@gmx.de oder udo.neist@nikocity.de Hompage: http://home.tiscalinet.de/udoneist/