Zurück   RR:Board > Computer > Programmierung & Entwicklung

Entwicklung und Coding in verschiedenen Programmiersprachen: Assembly, C++, C#, Perl, Delphi, .NET, Visual Basic...
Thema geschlossen
 
Themen-Optionen Thema durchsuchen

[Batch/Bash] - Dateien nach dateinamen in Ordner und Unterordner verschieben.
Alt 02.09.2009, 09:58   # 1
Der_Skill0r
Kabel Wurm
rot rot rot 
Bewertung:
Der_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 Punkte
Der_Skill0r hat mehr als 5000 Punkte
Registriert seit: Feb 2009
Internet: DSL2 16K
Beiträge: 764
Power: 15
Ich muss eine Menge .zip-Dateien nach folgendem Schema in Ordner und Unterordner verschieben:


Zip-Datei: 0103_1017_2

0103 ist ein Ordner, der den Ordner 10 beinhaltet.

Nach diesem Schema sind noch mehr Dateien vorhanden.

Der rote teil des Dateinamens steht für den Ordner, der Blaue für den Entsprechenden Unterordner, die letzten paar Zeichen sind unwichtig.

Die Dateien und die Ordner sind im Gleichen Pfad untergebracht.

Jetzt bräuchte ich eine Möglichkeit das Ganze schnell und automatisch zu machen, da 1900 Dateien von Hand verschieben ziemlich umständlich und zeitaufwendig ist.:baby:

Gibt es da eine Lösung mit VBS oder Batch? wenn nicht, womit sonst?

BWs gehen natürlich raus

Y0u want y0ur freed0m? Take it. That's what I'm c0unting 0n
I used t0 want y0u dead, but n0w I 0nly want y0u g0ne.
  Der_Skill0r ist offline  

Alt 02.09.2009, 10:34   # 2
chrisb
Don Szene
gruen gruen gruen gruen 
Bewertung:
chrisb hat 1000 bis 2499 Punktechrisb hat 1000 bis 2499 Punktechrisb hat 1000 bis 2499 Punktechrisb hat 1000 bis 2499 Punktechrisb hat 1000 bis 2499 Punktechrisb hat 1000 bis 2499 Punktechrisb hat 1000 bis 2499 Punkte
Registriert seit: Sep 2005
Beiträge: 139
Power: 19
Grundsätzlich kannst du das mit jeder Programmiersprache machen. Am besten sind dafür jedoch Skriptsprachen geeignet. Ich denke über mehr oder weniger umständliche Wege kann man es auch mit einem Batch-Skript machen, da bin ich nicht so bewandert. Da ich meist in C++ programmiere, würde ich es darin lösen. Das wäre aber ein Overkill, du könntest es ja mal in Python/Perl oder sogar in PHP versuchen. ;-)

Vorgehen ist klar:
1) Alle Dateinamen der .zip Dateien im current Verzeichnis einlesen und in Array/Vector speichern
2) Jeden Eintrag im Array durchgehen
2.1) Eintrag extrahieren ("_" kannst du als Token nehmen)
2.2) per system("mkdir token[0]"); Verzeichnis anlegen (je nach Sprache unterschiedlich) (falls Verzeichnis schon da ist, überspringen)
2.3) Unterverzeichnis anlegen nach selben Schema (substr(token[1], 0, 2))
2.4) Den Eintrag in das neue Unterverzeichnis per System-Befehl kopieren/verschieben
2.5) gegebenfalls Dateiname umbenennen

Edit: Bash Lösungen sind natürlich auch möglich. Mittels "ls -x | grep .zip" kannst du in einer for-Schleife jeden Dateinamen durchgehen und z.B. per awk/grep die nötigen Informationen zum Verschieben extrahieren. Inwiefern man das auf ein Batch-Skript anwendet, müssen dir andere sagen.
  chrisb ist offline  

AW: Dateien nach dateinamen in Ordner und Unterordner verschieben.
Alt 02.09.2009, 12:40   # 3
Der_Skill0r
Kabel Wurm
rot rot rot 
Bewertung:
Der_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 PunkteDer_Skill0r hat mehr als 5000 Punkte
Der_Skill0r hat mehr als 5000 Punkte
Registriert seit: Feb 2009
Internet: DSL2 16K
Beiträge: 764
Power: 15
Themenstarter
Danke

Ich werds mal in Perl probieren, ist die Sprache in der ich noch am meisten kann

falls schwierigkeiten auftreten melde ich mich nochmal

BW ist raus

Edit 1: Hat geklappt, Danke nochmals
Edit 2: Ist erledigt, closed^^

Y0u want y0ur freed0m? Take it. That's what I'm c0unting 0n
I used t0 want y0u dead, but n0w I 0nly want y0u g0ne.
  Der_Skill0r ist offline  
Thema geschlossen

RR:Board > Computer > Programmierung & Entwicklung > [Batch/Bash] - Dateien nach dateinamen in Ordner und Unterordner verschieben.


Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir erlaubt, Anhänge anzufügen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Batch] - Ordner Überwachung auf Dateien und verschieben Soji Programmierung & Entwicklung 7 30.03.2012 12:31
Suche Tool, das Ordner und Dateinamen abspeichert fc-volker Software 3 24.01.2011 11:05
doppelte dateien erkennen und zahlen vor dateinamen entfernen der_erich Filesharing 6 07.05.2009 19:52
Bei Vista den "Eigene Dateien" Ordner auf andere Partition verschieben? countermax Windows 7 18.03.2007 11:10
Wie kann ich in eine Image noch Ordner und Dateien einfugen hhtoprakhh Rippen & Brennen 8 11.06.2006 01:44



Alle Zeitangaben in WEZ +1. Es ist jetzt 07:11 Uhr.
vBulletin Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.