Kopieren Sie mehrere Dateien und senden Sie sie in einen bestimmten Unterordner

361
Rodrigo

Ich habe einen Ordner mit CD-Cover in .jpg und einen weiteren Ordner mit Unterordnern, jeweils mit der entsprechenden CD. Ich möchte jedes CD-Cover in den entsprechenden Unterordner senden. Sie sind bereits alphabetisch geordnet. Wie kann ich das machen?

1
Die Dateinamen der CD-Cover stimmen mit den entsprechenden Unterordnern dieser CD überein. Yisroel Tech vor 6 Jahren 0
Nein, aber in alphabetischer Reihenfolge stimmen die Positionen überein. Rodrigo vor 6 Jahren 0

1 Antwort auf die Frage

2
Nicole Hamilton

Mit einer Unix-Shell ist das ganz einfach. Sie könnten dies auch mit bash tun, aber wie Sie es mit der kostenlosen Demoversion meiner Hamilton C-Shell tun könnten . (Ja, ich bin der Autor.)

Angenommen, Sie befinden sich in dem Verzeichnis, in dem sich die JPGs befinden, und das Verzeichnis mit den CDs ist der Pfad zu dem Verzeichnis mit den Unterverzeichnissen mit den CDs:

set CDs = ``ld -1 directory-containing-CDs`` # Get list of CD directories set covers = *.jpg # Get the list of jpgs for i = 0 to $#covers - 1 do mv $covers[i] directory-containing-CDs\$CDs[i] # Move the jpgs one-at-a-time. end 

ldist ein Alias ​​zum Ausführen lsund gibt nur Verzeichnisse zurück. Die -1Option bedeutet, jedes Verzeichnis in eine eigene Zeile zu schreiben. Die doppelten Backquotes verwandeln jede Zeile in ein separates Wort (wenn Verzeichnisnamen Leerzeichen enthalten, möchten wir sie nicht in separate Wörter aufteilen).

Wenn etwas nicht klar ist, fragen Sie einfach.

Cool, danke. Rodrigo vor 6 Jahren 0