[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Verzeichnisname in Dateiname aufnehmen



On 10.Nov 2004 - 13:03:06, Hiro Protagonist wrote:
> Hi zusammen,
> 
> kann ja eigentlich nicht so schwierig sein - kriege ich aber trotzdem
> nicht hin. Und googlen nach passenden tutorials brachte micht nicht
> weiter - wie immer eine Frage der richtigen Suchbegriffe :-{

man sed tut's IMHO auch. Vielleicht noch man find...

> Ich habe in einem Verzeichnis mehrere Unterverzeichnisse mit Dateien
> drin. Nun möchte ich von allen Dateien eine Kopie erstellen, die im
> ersten Verzeichnis liegt und deren Name sich aus
> unterverzeichnis.bisherigerdateiname zusammen setzt.
> 
> Hat da jemand in der Runde sowas wie einen Einzeiler parat?

find -type f | while read f ; do echo mv "$f" "$(echo $f| sed 's/.\///' | sed 's/\//./g')" ; done 

find sucht alle Dateien ab dem aktuellen Verzeichnis, das erste sed
entfernt den "./" Teil der find-Ausgabe und das 2. ersetzt jeden "/"
durch einen ".", das Ergbnis ist dann der neue Dateiname. Bei Bedarf
mv durch cp ersetzen.

Andreas

-- 
If men acted after marriage as they do during courtship, there would
be fewer divorces -- and more bankruptcies.
		-- Frances Rodman



Reply to: