[Dresden-pm] Frage zum rekursiven Kopieren von Verzeichnissen

Hans-Dietrich Kirmse hd.kirmse at gmx.de
Mo Dez 8 22:29:33 PST 2014


Guten Morgen,

in Ermangelung einer PM-Gruppe in Thüringen wendet sich euer Zaungast 
aus Saalfeld wiedermal an euch mit der Bitte um Unterstützung.

Eine Kollegin aus Sachsen hat folgendes Anliegen: In ihrer Schule 
werkelt ein Linux-Server (delixs) und sie haben eine größere Anzahl von 
Windows-Clients. Um bei schon vorhandenen Accounts den Desktop 
anzupassen wurde deshalb um ein Script gebeten, was von einem 
Musteraccount die neuen Dateien und Verzeichnisse auf den Desktop der 
vorhandenen Dateien kopiert. Eine (lauffähige) erste Version eines 
solchen Scripts habe ich erstellt

  http://www.erasmus-reinhold-gymnasium.de/temp/add2desktop.pl.html

Leider kopiert dieses Script nur Dateien, aber keine Verzeichnisse.
Ich weiss zwar, dass es das Modul File::Copy::Recursive gibt, aber es 
müssen auch die Rechte gesetzt werden (das kann vielleicht auch noch 
entfallen), aber es muss auf jeden Fall der Owner geändert werden. Und 
wie man das mit Perl für einen Verzeichnis rekursiv macht, habe ich 
nicht gefunden. Auch wenn es hier vermutlich nicht gebraucht wird, bei 
den Rechten sollten ja eigentlich die für Dateien und Verzeichnisse 
unterschiedlich gesetzt werden. Auch das weiss ich nicht, wie man das 
machen könnte.

Zusammengefasst: es geht um das Ersetzen des 'TODO's in dem folgenden 
Abschnitt:

# wenn Datei
if (-f $quelldatei) {
   # dann kopieren (gegebenenfalls überschreiben)
   $okay = copy $quelldatei, $zieldatei;
   # wenn das Kopieren geklappt hat
   if ($okay) {
     # den Owner und Gruppe setzen
     chown $uid, $gid, $zieldatei;
     # die Rechte setzen
     chmod 0755, $zieldatei;
     # den Dateizähler um 1 erhöhen
     $anz_files++;
   }	
}
# sonst (wenn Verzeichnis)
else {
   #
   # TODO  (analog für Verzeichnisse, aber eben rekursiv)
   #
}		


Wäre für jeden Hinweis zu diesem Problem sehr dankbar.

Viele Grüße
Hans-Dietrich

PS: da ich als Laie und Autodidakt und zudem hier "im eigenen Saft 
schmore" würde ich mich auch über jeden Hinweis bzw. Kritik zu diesem 
Script unabhängig von diesem Kopierproblem freuen.


Mehr Informationen über die Mailingliste Dresden-pm