Dateien von Ordner A nach Ordner B kopieren nach CSV-Vorlage

  1. corehead

    corehead Thread StarterMacUser Mitglied

    Mitglied seit:
    01.12.2004
    Beiträge:
    1
    Zustimmungen:
    0
    Hallo zusammen, vielleicht kann mir jemand helfen. Wie der Titel schon sagt, suche ich eine Möglichkeit (Software/Script), um Dateien von Ort A nach Ort B zu transferieren, ohne jede Datei von Hand zu verschieben.

    Ich habe einen Ordner mit mehreren tausend Produktbildern, hin und wieder möchten Kollegen mehrere Dutzend, teilweise auch mehrere hundert Bilder haben. Da wir keine Datenbank oder ähnliches haben, muss das dann von Hand erledigt werden. Die Anforderungen kommen aber meistens in Excel, von daher liegen die Art-Nr. schon digital vor. Die Bezeichung der Bilddateien stimmt mit der Art-Nr. überein, insofern ist die Basis schon vorhanden.

    Jetzt fehlt nur ein kleines Programm, bei dem ich Quell- (evtl. inkl. Subfolders) und Zielordner definiere, die CSV-Datei auswähle und auf START drücke. Falls jemand ein kommerzielles Tool kennt, das solches zu tun vermag, bitte auch melden. Nur eine Individualprogrammierung kommt wg. der Kosten nicht in Frage, aber vielleicht entschließt sich ja jemand, so etwas als Shareware zu erstellen.

    Für eine rege Teilnahme danke ich im voraus
    Jörg
     
    corehead, 01.12.2004
  2. olbea

    olbeaMacUser Mitglied

    Mitglied seit:
    02.07.2004
    Beiträge:
    904
    Zustimmungen:
    24
    Laß mich mal nachdenken (ich habe noch keinen Mac, aber es ist ja ein "unix")
    Ich kann mir aber vorstellen, dass in einer Shell (DOS-Box) es nach folgendem shema funktionieren können...
    "> more namederdatei.csv | cp /zielverzeichnis"
    # bin mir aber nicht ganz sicher, da ich gerade mein linux nicht zur hand habe!!!!
    das "|" zeichen übergibt die ausgabe an den darauffolgenden befehl.
    Kann einer genaueres sagen?
    Vielleicht muß vorher noch ein "find" laufen.

    Gruß
    Oliver
     
    olbea, 01.12.2004
  3. svenloth

    svenlothMacUser Mitglied

    Mitglied seit:
    17.09.2004
    Beiträge:
    163
    Zustimmungen:
    0
    Ich würde das in nem Shellscript machen.

    Hier sowas in der Art:

    Code:
    #!/bin/bash
    
    WD=`pwd`
    
    KEYFILE=$1
    shift
    
    FROMDIR=$1
    shift
    
    KEYS=`cat $KEYFILE | awk ' BEGIN { FS=";" } { print $1 } '`
    
    for KEY in $KEYS
        do
        
            unset FILES
            unset NEWDIR
            
            NEWDIR=$KEY
    
            FILES=`ls $FROMDIR/*$KEY*`
    
            for FILE in $FILES
                do
                
                    if [ ! -e $WD/$NEWDIR ] 
                        then
                            echo "Verzeichnis $NEWDIR existiert nicht. Erstelle $WD/$NEWDIR"
                            mkdir $WD/$NEWDIR
                    fi
                    
                    echo "Kopiere $FILE nach $WD/$NEWDIR"
                    cp $FILE $WD/$NEWDIR
            done
    done
    
    exit
    Einfach den Code in einer Datei kopieren (ich hab sie copyByKey.sh genannt). Danach ein "chmod 700 dateiname" ausführen.

    Du kannst das Script dann folgendermaßen aufrufen:

    copyByKey keyfile /Quellverzeichnis

    Das Script liest dann erst das Keyfile, in dem in der ersten Spalte die Werte als Keys gespeichert werden.

    Dann sucht das Script sich alle Files deren Dateinamen den Key enthält. Legt da wo man gerade ist ein Unterverzeichnis (mit Key als namen) an und kopiert alle gefunden Files dort rein.

    Im Keyfile sollte deine Projektnummer immer in der ersten Spalte stehen. Ansonsten musst du in der Zeile "KEYS=`cat $KEYFILE | awk ' BEGIN { FS=";" } { print $1 } '`" aus dem "$1" ein "$nummerderspalte" machen, also $2,$3,$10 oder so. Als Spaltentrenner wird ein ";" erwartet.

    Achtung! Das funktioniert nicht, wenn der Dateiname Leerzeichen enthält!
     
    svenloth, 01.12.2004
  4. svenloth

    svenlothMacUser Mitglied

    Mitglied seit:
    17.09.2004
    Beiträge:
    163
    Zustimmungen:
    0
    ...........
     
    svenloth, 01.12.2004
  5. olbea

    olbeaMacUser Mitglied

    Mitglied seit:
    02.07.2004
    Beiträge:
    904
    Zustimmungen:
    24
    Schön... (das script)
    Ich hoffe es hilft..
     
    olbea, 01.12.2004
Die Seite wird geladen...
Ähnliche Themen - Dateien Ordner nach
  1. stuman
    Antworten:
    7
    Aufrufe:
    123
  2. anniho
    Antworten:
    1
    Aufrufe:
    1.654
    tocotronaut
    16.02.2016
  3. flashbak
    Antworten:
    1
    Aufrufe:
    359
    ekki161
    13.02.2016
  4. rmimac
    Antworten:
    0
    Aufrufe:
    927
  5. TiffSequenz
    Antworten:
    6
    Aufrufe:
    1.327
    ::arglbarf::
    29.10.2008