21 Dic, 2025 - 02:02 PMDeutsch | English
Hola invitado [ Register | Entrar ]

Publicar nuevo tema   Responder al tema
Ver tema anterior Versión imprimible Entre para ver sus mensajes privados Ver tema siguiente
Autor Mensaje
stalin2000
Asunto: Automatische Ordner-Erstellung nach Namen von Dateien ?  MensajePublicado: 16 Jul, 2008 - 02:13 AM



Registrado: 04 Ene, 2007
Mensajes: 1604
Ubicación: Hamburg
Hallo,

ich habe das Problem, daß ich sehr viele Textdateien habe für die ich jeweils einen eigenen Ordner mit dem selben Namen wie die Datei erstellen möchte.
Anschließend möchte ich, daß jede Textdatei in ihren gleichnamigen Ordner automatisch kopiert wird.

Weiß da jemand eventuell, wie eine Befehlsabfolge für diesen Zweck ungefähr lauten könnte?

Also mit mkdir kann man ja Verzeichnisse erstellen. Da ich auch eine Liste in Text, bzw Tabellenform der Dateinamen habe, müßte ich nur noch die Verknüpfung von meiner Dateiliste und dem Befehl mkdir irgendwie hinbekommen.... Aber wie.. ?

Gruß Christopher

_________________
Es ist dem Untertanen untersagt, den Maßstab seiner beschränkten Einsicht an die Handlungen der Obrigkeit anzulegen - Kurfürst Friedrich Wilhelm von Brandenburg
www.projektidee.org | www.gesundheitstabelle.de | www.neoliberalyse.de
 
 Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor  
Responder citando Volver arriba
sc
Asunto:   MensajePublicado: 17 Jul, 2008 - 07:59 AM



Registrado: 26 Nov, 2005
Mensajes: 24

stalin2000 escribió:
Da ich auch eine Liste in Text, bzw Tabellenform der Dateinamen habe...


Código:

#!/bin/bash

for i in "`cat dateiliste.txt`"
do
        mkdir `basename "$i" .txt`
        cp -a "$i" `basename "$i" .txt`
done


daran könntest Du Dich evt. anlehnen.
Script ist aber ungetestet und enthält keine Sicherheitsabfragen.
Übernehme keine Gewähr für Deine Daten Winken

Ich nehme mal an, dass im Ordnername nicht die Datei-Endung
(hier im Beispiel .txt) enthalten sein braucht. Sonst wirst Du ver-
mutlich die Ordner erst in einem anderen Verzeichnis anlegen müssen,
da sonst der Dateinamen doppelt vorhanden wäre ...
Des Weiteren müsstest `basename "$i" .txt` durch "/Pfad/$i" oder
so ähnlich ersetzten.

Alternativ zur Dateiliste kannst ja auch eine List-Abfrage in der
for-Schleife machen.

Código:
for i in "`ls`"


Ggf. musst noch schaun, dass vorhandene Ornder nicht angezeigt werden

Vielleicht hilfts Dir ja irgendwie weiter ....
 
 Ver perfil de usuario Enviar mensaje privado  
Responder citando Volver arriba
stalin2000
Asunto:   MensajePublicado: 17 Jul, 2008 - 10:38 AM



Registrado: 04 Ene, 2007
Mensajes: 1604
Ubicación: Hamburg
Danke!

ich habe jetzt aus folgendem eine .sh Datei gemacht:

Cita:
#!/bin/bash

for i in "`cat liste.txt`"
do
mkdir `basename "$i" .txt`
cp -a "$i" `basename "$i" .txt`
done


Das Problem ist, daß das Script jetzt für jedes Wort einen Ordner macht. Jede Zeile der liste.txt enthält mehrere Worte.

Kann ich das so modifizieren, daß er automatisch aus jeder Zeile einen Ordner macht?

Gruß Christopher

_________________
Es ist dem Untertanen untersagt, den Maßstab seiner beschränkten Einsicht an die Handlungen der Obrigkeit anzulegen - Kurfürst Friedrich Wilhelm von Brandenburg
www.projektidee.org | www.gesundheitstabelle.de | www.neoliberalyse.de
 
 Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor  
Responder citando Volver arriba
Kano
Asunto:   MensajePublicado: 17 Jul, 2008 - 11:26 AM



Registrado: 17 Dic, 2003
Mensajes: 16815

while read x; do
....
done <<EOT
$(cat liste.txt)
EOT
 
 Ver perfil de usuario Enviar mensaje privado  
Responder citando Volver arriba
jgese
Asunto:   MensajePublicado: 17 Jul, 2008 - 01:29 PM



Registrado: 18 Ene, 2004
Mensajes: 645

---


Ultima edición por jgese el 20 Jul, 2008 - 12:11 PM, editado 2 veces
 
 Ver perfil de usuario Enviar mensaje privado  
Responder citando Volver arriba
stalin2000
Asunto:   MensajePublicado: 17 Jul, 2008 - 11:21 PM



Registrado: 04 Ene, 2007
Mensajes: 1604
Ubicación: Hamburg
Ja, danke.

Fast funktioniert das Script schon.

Cita:
mkdir: kann Verzeichnis „U2 - Pride.txt“ nicht anlegen: Die Datei existiert bereits


Müßte man noch das txt beim Verzeichnis wegbekommen, oder jedem Ordner noch ein Zeichen hinzufügen und dann müßte's passen...

_________________
Es ist dem Untertanen untersagt, den Maßstab seiner beschränkten Einsicht an die Handlungen der Obrigkeit anzulegen - Kurfürst Friedrich Wilhelm von Brandenburg
www.projektidee.org | www.gesundheitstabelle.de | www.neoliberalyse.de
 
 Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor  
Responder citando Volver arriba
jgese
Asunto:   MensajePublicado: 18 Jul, 2008 - 12:28 PM



Registrado: 18 Ene, 2004
Mensajes: 645

---


Ultima edición por jgese el 20 Jul, 2008 - 12:12 PM, editado 1 vez
 
 Ver perfil de usuario Enviar mensaje privado  
Responder citando Volver arriba
stalin2000
Asunto:   MensajePublicado: 18 Jul, 2008 - 12:54 PM



Registrado: 04 Ene, 2007
Mensajes: 1604
Ubicación: Hamburg
Hm, aber wie soll denn das Verzeichnis xy.txt angelegt werden, wenn im selben Verzeichnis schon die Datei xy.txt liegt? Das ist doch gar nicht möglich.

_________________
Es ist dem Untertanen untersagt, den Maßstab seiner beschränkten Einsicht an die Handlungen der Obrigkeit anzulegen - Kurfürst Friedrich Wilhelm von Brandenburg
www.projektidee.org | www.gesundheitstabelle.de | www.neoliberalyse.de
 
 Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor  
Responder citando Volver arriba
blauweiss
Asunto:   MensajePublicado: 19 Jul, 2008 - 08:28 AM



Registrado: 12 Mar, 2005
Mensajes: 368

Es wäre ganz hilfreich, wenn du mal 2-3 Zeilen deiner
'Liste in Text, bzw Tabellenform der Dateinamen'
posten würdest
und das, was dabei als Ergebnis herauskommen soll.

_________________
Gruss an alle Kanotix-Fans, blauweiss
 
 Ver perfil de usuario Enviar mensaje privado  
Responder citando Volver arriba
stalin2000
Asunto:   MensajePublicado: 19 Jul, 2008 - 11:34 AM



Registrado: 04 Ene, 2007
Mensajes: 1604
Ubicación: Hamburg
Okay,
Die Liste sieht so aus:

Cita:

Tocotronic - unter der Schnellstraße
Die Sterne - Big in Berlin
R.E.M. - Man on The Moon
Archive - Fuck U

Und dann möchte ich alle Ordner haben wie:

Cita:
Die Sterne - Big in Berlin


und so weiter...

_________________
Es ist dem Untertanen untersagt, den Maßstab seiner beschränkten Einsicht an die Handlungen der Obrigkeit anzulegen - Kurfürst Friedrich Wilhelm von Brandenburg
www.projektidee.org | www.gesundheitstabelle.de | www.neoliberalyse.de
 
 Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor  
Responder citando Volver arriba
Kano
Asunto:   MensajePublicado: 19 Jul, 2008 - 12:16 PM



Registrado: 17 Dic, 2003
Mensajes: 16815

Wars zu schwer mein beispiel komplett auszufüllen? Anscheinend kannst die eine fehlende Zeile nicht reinschreiben:

while read x; do
mkdir -p "$x"
done <<EOT
$(cat liste.txt)
EOT
 
 Ver perfil de usuario Enviar mensaje privado  
Responder citando Volver arriba
jgese
Asunto: Re: Automatische Ordner-Erstellung nach Namen von Dateien ?  MensajePublicado: 19 Jul, 2008 - 12:58 PM



Registrado: 18 Ene, 2004
Mensajes: 645

---


Ultima edición por jgese el 20 Jul, 2008 - 12:12 PM, editado 1 vez
 
 Ver perfil de usuario Enviar mensaje privado  
Responder citando Volver arriba
blauweiss
Asunto:   MensajePublicado: 19 Jul, 2008 - 02:22 PM



Registrado: 12 Mar, 2005
Mensajes: 368

Kano escribió:
Wars zu schwer mein beispiel komplett auszufüllen?...

Vielleicht weil es so nicht geht?
Wie stalin2000 schon geschrieben hat, er kann in einem Ordner
in dem z.B. die Datei '123.txt' existiert nicht ein Verzeichnis '123.txt' erstellen,
oder kennst du da etwa einen Kniff?

Er kann eigentlich nur den Umweg über Verschieben oder Umbenennen wählen.
Verschieben vll. so (Anführungsstriche sind wichtig, da offensichtl. Leerzeichen vorhanden sind),
bediene mich mal an deinem Beispiel:

while read x; do
  
mv -f "$x" /tmp
  mkdir "$x"
  mv -f "/tmp/$x" "$x"
done <<EOT
$(cat liste.txt)
EOT

_________________
Gruss an alle Kanotix-Fans, blauweiss
 
 Ver perfil de usuario Enviar mensaje privado  
Responder citando Volver arriba
Kano
Asunto:   MensajePublicado: 19 Jul, 2008 - 02:45 PM



Registrado: 17 Dic, 2003
Mensajes: 16815

Vermutlich sollte das Verzeichnis ja eh nicht .txt am ende heissen, also müsstest $(basename "$x" .txt) nehmen. Weiterhin ist bei seiner Beispielliste ja nix mit txt zu sehn!
 
 Ver perfil de usuario Enviar mensaje privado  
Responder citando Volver arriba
stalin2000
Asunto:   MensajePublicado: 20 Jul, 2008 - 11:55 AM



Registrado: 04 Ene, 2007
Mensajes: 1604
Ubicación: Hamburg
Super dank Euch noch mal!

Das Script von Kano für die Erstellung von Ordnern ohne Dateilistendatei,
sowie das Script aus dem letzten Post von blauweiss, für mit Dateiliste

funktionieren.

_________________
Es ist dem Untertanen untersagt, den Maßstab seiner beschränkten Einsicht an die Handlungen der Obrigkeit anzulegen - Kurfürst Friedrich Wilhelm von Brandenburg
www.projektidee.org | www.gesundheitstabelle.de | www.neoliberalyse.de
 
 Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor  
Responder citando Volver arriba
Mostrar mensajes anteriores:     
Cambiar a:  
Todas las horas son GMT + 1 Hora
Publicar nuevo tema   Responder al tema
Ver tema anterior Versión imprimible Entre para ver sus mensajes privados Ver tema siguiente
Powered by PNphpBB2 © 2003-2007 The PNphpBB Group
Créditos
 
Deutsch | English
Logos and trademarks are the property of their respective owners, comments are property of their posters, the rest is © 2004 - 2006 by Jörg Schirottke (Kano).
Consult Impressum and Legal Terms for details. Kanotix is Free Software released under the GNU/GPL license.
This CMS is powered by PostNuke, all themes used at this site are released under the GNU/GPL license. designed and hosted by w3you. Our web server is running on Kanotix64-2006.