tutorials.de Buch-Aktion 02/2012
Like Tree1Danke
  • 1 Beitrag von sheel
ERLEDIGT
NEIN
ANTWORTEN
8
ZUGRIFFE
1283
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    JP1 JP1 ist offline Rookie
    Registriert seit
    Aug 2010
    Beiträge
    5
    Hallo Leute,

    ich habe nun seit einiger Zeit folgendes Problem:

    Ich möchte mit einem Batchprogramm eine bestimmte Anzahl Ordner auf einem in der Batchdatei definierten Laufwerk erstellen lassen, jedoch die Namen der Ordner soll das Batchprogramm aus einer vorhandenen Text- oder Exceldatei lesen und anschließend erstellen.

    Die Textdatei liegt z.B. in folgendem Format vor:

    Mueller Marcus 2010_11_07
    Tormeyer Lars 2010_11_06
    Loren Denis 2010_11_04

    (kann auch Tab oder Komma getrennt erstellt werden)

    u.s.w.

    Ich habe jetzt schon eine ganze Weile herumexperimentiert und Foren durchsucht komme aber zu keinem
    brauchbaren Ergebnis.Ist einfach schon zu lange her, gute 30 Jahre , das ich mich mit Automatisierung beschäftigt hatte.

    Ich krieg´s einfach nicht mehr hin, vielleicht könnt ihr mir helfen.

    Gruß Heiko JP1
     

  2. #2
    JP1 JP1 ist offline Rookie
    Registriert seit
    Aug 2010
    Beiträge
    5
    Ach so,

    bisher mache ich es so, dass ich mir in Excel eine Spalte erzeuge (Verketten) die dann folgendes ausgibt:

    mkdir Mueller_Marcus_20_11_07
    mkdir Tormeyer Lars 2010_11_06
    mkdir Loren Denis 2010_11_04

    diese kopiere ich mir dann in meine Mini Batchdatei und es werden dann die Ordner erstellt.

    echo off
    cls
    :start
    ECHO.
    mkdir Mueller_Marcus_20_11_07
    mkdir Tormeyer Lars 2010_11_06
    mkdir Loren Denis 2010_11_04
    :end

    Ist aber immer ganz schön umständlich und Leerzeichen und Umlaute kann ich auch nicht erzeugen.

    Gruß Heiko JP1
     

  3. #3
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    7.983
    Hi.

    Siehe "help for".

    Mit for /F kann man Dateien zeilenweise verarbeiten und an Trennzeichen aufspalten.

    Um Umlaute zu erstellen, aus einer Datei die im ANSI Zeichensatz 1252 gespeichert ist, schalte den Zeichensatz der Konsole auf 1252 in der Batch Datei um:
    Code :
    1
    
    chcp 1252
    \edit: Man kann den aktuellen ANSI Zeichensatz auch aus der Registry auslesen, falls das Skript auf anderen Rechnern laufen soll, siehe http://www.tutorials.de/sonstige-spr...ml#post1889539

    Gruß
    Geändert von deepthroat (11.08.10 um 08:14 Uhr)
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  4. #4
    JP1 JP1 ist offline Rookie
    Registriert seit
    Aug 2010
    Beiträge
    5
    Danke, einen kleinen Schritt bin ich nun weiter:

    - Die Umlaute werden Dank "chsp 1252" nun mit erstellt
    - ich habe folgendes in die Batch geschrieben:

    echo off
    cls
    chcp 1252
    :start
    FOR /F %%G IN (list.txt) DO @mkdir %%G

    - das Batchprogramm liest nun die "list.txt" ein und erstellt die Ordner - ABER ! leider liest das Programm die erste Zeile in meiner Textdatei und springt nach dem ersten gelesen Leerzeichen in die zweite Zeile.

    Somit werden nur die Ordner "Hans" "Peter" und "Torsten" erstellt und nicht wie gewünscht

    Hans Beispiel 20.11.1980
    Peter Sample 11.01.1974
    Torsten Hpunkt 04.04.1986

    Gibt es dafür noch eine Lösung?

    Viele Grüße
    Heiko JP1
     

  5. #5
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    7.983
    Zitat Zitat von JP1 Beitrag anzeigen
    Gibt es dafür noch eine Lösung?
    Ja, lies einfach die Hilfe "help for".

    Und es gibt auch so eine neumodische Erfindung namens "Suchmaschine"

    Gruß
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  6. #6
    JP1 JP1 ist offline Rookie
    Registriert seit
    Aug 2010
    Beiträge
    5
    Naja, es hätte ja sein können das man in einem Fachforum Antworten auf gestellte Fragen bekommt. Zimindest ist dies in den Foren meiner Berufsgruppe so!Es tut mir sehr leid, aber man kann sich nicht mit allen Dingen dieser Welt beschäftigen und ich bin nun mal kein Programierer.

    Ich hätte hier nur etwas mehr Unterstützung erwartet.

    Ich beschäftige mich damit numehr seit einer Woche und habe aber keine Zeit dafür mich stundenlang in Programiersprachen einzulesen. Suchmaschinen habe ich bereits sehr intensiv befragt und bin jedoch zu keiner Lösung gekommen, genaus wie "help for" auf der Komandozeilenebene bringt für mich nur bömiche Dörfer. Nach stundenlangen herumexperimentieren mit Optionen und Variabeln habe ich einfach die Nase voll.
     

  7. #7
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    7.983
    Hi.
    Zitat Zitat von JP1 Beitrag anzeigen
    Naja, es hätte ja sein können das man in einem Fachforum Antworten auf gestellte Fragen bekommt. Zimindest ist dies in den Foren meiner Berufsgruppe so!Es tut mir sehr leid, aber man kann sich nicht mit allen Dingen dieser Welt beschäftigen und ich bin nun mal kein Programierer.
    Du hast offenbar das Konzept von tutorials.de nicht verstanden. Erstens hilft hier jeder freiwillig und kostenlos. Zweitens wird davon ausgegangen, dass man etwas lernen möchte und dazu etwas Eigeninitiative mitbringt.
    Zitat Zitat von JP1 Beitrag anzeigen
    Ich hätte hier nur etwas mehr Unterstützung erwartet.
    Sorry, aber was ist so schwierig die Hilfe zu lesen? Es handelt sich nicht mal um 100 Zeilen mit Beispielen. Wenn da irgendwas unklar ist, dann kann man ja fragen...

    Außerdem finde ich meine Unterstützung ziemlich fair.
    Zitat Zitat von JP1 Beitrag anzeigen
    Ich beschäftige mich damit numehr seit einer Woche und habe aber keine Zeit dafür mich stundenlang in Programiersprachen einzulesen. Suchmaschinen habe ich bereits sehr intensiv befragt und bin jedoch zu keiner Lösung gekommen, genaus wie "help for" auf der Komandozeilenebene bringt für mich nur bömiche Dörfer. Nach stundenlangen herumexperimentieren mit Optionen und Variabeln habe ich einfach die Nase voll.
    Wonach hast du denn gesucht? Der erste Treffer von ( "batch for komplette zeile lesen") ist sogar ein Thema hier auf tutorials.de.

    Gruß
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  8. #8
    Avatar von sheel
    sheel sheel ist offline Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    3.992
    Zitat Zitat von JP1 Beitrag anzeigen
    Naja, es hätte ja sein können das man in einem Fachforum Antworten auf gestellte Fragen bekommt. Zimindest ist dies in den Foren meiner Berufsgruppe so!
    Ist "Sonstige Sprachen" auf Batch spezialisiert?

    Zitat Zitat von JP1 Beitrag anzeigen
    Ich hätte hier nur etwas mehr Unterstützung erwartet.

    Ich beschäftige mich damit numehr seit einer Woche und habe aber keine Zeit dafür mich stundenlang in Programiersprachen einzulesen.
    ...
    Nach stundenlangen herumexperimentieren mit Optionen und Variabeln habe ich einfach die Nase voll.
    Jede Hilfestellung in diesem (und den meisten anderen) Internetforum ist auf freiwilliger Basis.
    Man kann nicht verlangen, dass einem Andere die gesamte Arbeit abnehmen.

    Ohne Eigeninitiative geht nichts, und Programmieren lernt man eben nicht von heute auf morgen.

    Zitat Zitat von JP1 Beitrag anzeigen
    Suchmaschinen habe ich bereits sehr intensiv befragt und bin jedoch zu keiner Lösung gekommen, genaus wie "help for" auf der Komandozeilenebene bringt für mich nur bömiche Dörfer.
    Was ist an "help for" unverständlich?
    Es ist zwar nicht kurz, aber (meiner Meinung nach) gut verständlich und mit vielen Anwendungsbeispielen ausgeschmückt.

    Es wird sogar mit Beispiel erklärt, was "case-sensitiv" bedeutet.
    Ich weiß zwar nicht, welche Windowsversion du verwendest, aber der Hilfetext wird ziemlich gleich geblieben sein.



    edit: zu spät
    deepthroat bedankt sich. 

  9. #9
    JP1 JP1 ist offline Rookie
    Registriert seit
    Aug 2010
    Beiträge
    5
    Generell gesehen habt ihr ja recht, nur ich bin es aus der Fotografenbranche gewohnt, das man direkt und ohne Rätsel oder Schnitzeljagt geholfen bekommt. Das mag aber, genau wie bei euch, daran liegen, das die Kollegen wissen von was sie sprechen.
    Das wiederum ist in meinem Fall nicht so!

    Ich habe es mittlerweile nun doch noch selbst gelöst, wobei ich mir nicht sicher bin ob dies der richtige Weg ist und was da im Hintergrund noch so alles passiert.

    echo off
    cls
    chcp 1252
    :start
    FOR /F "usebackq tokens=* delims=;" %%G IN (list.txt) DO @mkdir "%%G"
    :end

    Resultat:

    Hans Beispiel 20.11.1980
    Peter Sample 11.01.1974
    Torsten Hpunkt 04.04.1986

    Vielen Dank für die Anregungen und Hilfe

    Viele Grüße
    Heiko JP1
     

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 20.05.10, 16:13
  2. Ordner erstellen? ( Datei-upload )
    Von sandroP im Forum PHP
    Antworten: 3
    Letzter Beitrag: 07.06.08, 20:29
  3. Ordner und Datei aus Variablen erstellen
    Von impy2000 im Forum PHP
    Antworten: 3
    Letzter Beitrag: 17.08.07, 18:25
  4. Batchprogramm zum ersetzen von Text in Datei mit Whitespaces
    Von webmartin im Forum Sonstige Sprachen
    Antworten: 3
    Letzter Beitrag: 10.09.04, 17:29
  5. Batchprogramm zu ersetzen von Text in Datei
    Von jtraser im Forum Sonstige Sprachen
    Antworten: 7
    Letzter Beitrag: 25.08.04, 08:27

Stichworte