Verzeichnis + Dateien kopieren

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von onlineuser, 20.03.2007.

  1. #1 onlineuser, 20.03.2007
    Zuletzt bearbeitet: 20.03.2007
    onlineuser

    onlineuser Mitglied

    Dabei seit:
    05.05.2006
    Beiträge:
    34
    Zustimmungen:
    0
    Hi,

    es ist ja kein Problem ganze Unterverzeichnisse mit all den darin enthaltenen Dateien und weiteren Unterverzeichnissen zu kopieren. Jedoch, wenn man genau dasselbe braucht, jedoch nur *.txt-Dateien kopieren möchte - wie kann man das realisieren? rsync ist aber tabu; Kann man es mit cp realisieren oder muss man zusätzlich über alle Dateien iterieren und dann einzeln in der Schleife kopieren!?

    Liebe Grüsse.
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Code:
    find ./ -name \*.txt -exec cp $i <prefix>/$(dirname $i)/ \;
    
    Wobei <prefix> das root-Verzeichnis Deines Zielbaumes ist.
     
  4. #3 onlineuser, 21.03.2007
    onlineuser

    onlineuser Mitglied

    Dabei seit:
    05.05.2006
    Beiträge:
    34
    Zustimmungen:
    0
    Hi,

    gute Lösung, aber das Kommando legt mir nicht die Unterverzeichnisse an. Kann man da noch ein mkdir einbauen, damit die selbe Verzeichnisstruktur entsteht wie im originalen Ordner?

    Liebe Grüsse.
     
  5. #4 Wolfgang, 21.03.2007
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo

    Dann musst du eben mal ein wenig basteln und dir auch mal man mkdir ansehen Option -p inclusive man dirname.
    etwa so
    Code:
    PREFIX='/tmp'; #dein Prefix
    find /home/wolle/daten/ -type f -iname "*txt" -printf "%p\n"|
    while read P; 
    do 
      D=$(dirname $P); 
         if [ -d "$PREFIX$D" ];
        then 
         echo "$PREFIX$D" existiert;
         ##hier dein cp;
        else 
        echo $PREFIX$D wird erstellt;
        mkdir -p "$PREFIX$D";
        ##hier dein cp
        fi ;
    done
    
    Den Rest bekommst du alleine hin.
    siehe auch man find Action -printf
    Aber warum nicht rsync?
    Warum das Rad nochmal erfinden?

    Gruß Wolfgang
     
  6. #5 onlineuser, 21.03.2007
    onlineuser

    onlineuser Mitglied

    Dabei seit:
    05.05.2006
    Beiträge:
    34
    Zustimmungen:
    0
    Hi,

    habs jetzt mit einer For-Schleife gemacht, find iteriert über alle .cs Files, mkdir legt die selbe Verzeichnisstruktur an (dirname und basename) und dann kopiert cp die Dateien rein.

    rsync darf laut Angabe nicht verwendet werden. Wäre dann zu einfach. :)

    Liebe Grüsse.
     
  7. #6 Wolfgang, 21.03.2007
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Ups...
    Hausaufgaben?
    :oldman

    Naja, etwas anderes macht mein Schnipsel ja auch nicht.
    Nur werden bei mir nur die Pfade angelegt, die gebraucht werden (nur wo es solch eine Datei gibt). Dadurch gibt es anschließend kein leeres Verzeichnis.

    Gruß Wolfgang
     
  8. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
Thema:

Verzeichnis + Dateien kopieren

Die Seite wird geladen...

Verzeichnis + Dateien kopieren - Ähnliche Themen

  1. Alle Dateien eines Verzeichnisses mit einer anderen Datei vergleichen

    Alle Dateien eines Verzeichnisses mit einer anderen Datei vergleichen: Hallo, ich habe ein Verzeichnis, darin enthalten sind mehrere Dateien. Nun möchte ich alle Dateien (Parameter $1) gegen eine konstante Datei...
  2. Dateien im Verzeichnis /var/lib/sudo/[user]/ zu was

    Dateien im Verzeichnis /var/lib/sudo/[user]/ zu was: Hallo zusammen, ich bin auf das o.g. Verzeichnis gestossen und musste feststellen, dass in diesem Verzeichnis ca. 2300 Element enthalten sind und...
  3. Script zum Bereinigen von Dateien mit Unterverzeichnissen (Schadcode löschen) eilt

    Script zum Bereinigen von Dateien mit Unterverzeichnissen (Schadcode löschen) eilt: Ich tue mich etwas schwer mit shell-Scripten und benötige dringen ein ständig anpassbares Script, das immer ab dem Stammverzeichnis in dem ich...
  4. tree mit Verzeichnissen, OHNE Inhalt, aber mit sonstigen Dateien

    tree mit Verzeichnissen, OHNE Inhalt, aber mit sonstigen Dateien: Servus Forum, ich möchte den Inhalt meines Musikordners ausgeben (reichlich Ordner mit Unterordner aber auch viele .mp3 Dateien im...
  5. Alle Textdateien eines Verzeichnisses mit Header ausstatten

    Alle Textdateien eines Verzeichnisses mit Header ausstatten: Hallo liebe Community. Ich soll ein Script schreiben, welches innerhalb von einem Verzeichnis alle .txt Dateien mit einer beliebigen ersten...