Liebe Leser,
Wenn dies Ihr erster Besuch hier ist, lesen Sie bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Sie müssen sich vermutlich registrieren, bevor Sie Beiträge verfassen können. Klicken Sie rechts auf 'Jetzt registrieren.', um den Registrierungsprozess zu starten.
Seite 1 von 3 1 2 3 LetzteLetzte
Ergebnis 1 bis 9 von 26
  1. #1
    Registriert seit
    04.2007
    Beiträge
    264

    Batch - Über echo Datei erstellen

    Halli Hallo!

    So wirklich Programmieren ist Batch ja nicht, trotzdem mal mit hier rein, weil's auch schon mehrere davon gibt.

    Ich Möchte über eine kleine simple Batch-Datei eine Start-Routine eines Programms, was noch 'n Parameter braucht, in Autostart erstellen:
    Code:
    echo programmpfad\start.exe -s > %AllUsersProfile%\Startmenü\Programme\Autostart\Start.bat
    Das funktioniert aber nicht. Starte ich es im CMD, sehe ich, dass es folgendes ausführt:
    Code:
    echo programmpfad\start.exe -s und Einstellungen\All Users\Startmenü\Programme\Autostart\Start.bat > C:\Dokumente
    Damit erstellt er mir eine undefinierte Datei "Dokumente" auf C: mit dem Inhalt "programmpfad\start.exe -s und Einstellungen\All Users\Startmenü\Programme\Autostart\ShutDown.bat", was mir natürlich nicht hilft.

    Aus irgendeinem Grund modelt er mir den ersten Teil des %AllUsersProfile% hinten dran und entstellt so natürlich den Sinn.
    Warum macht er das und wie unterbinde ich das?

    Tschüss Markus
    Geändert von Chickenmarkus (27.04.2009 um 16:28 Uhr) Grund: Hatte die "\" erst nicht mit gespeichert.
    Der beste Weg einen PC zu beschleunigen, ist mit 9,81 m/s².
    Die Lösung des Problems ist niemals die Gewalt, doch manchmal hilft es, wenn es auch mal knallt.

  2. #2
    Avatar von VB-Coder
    VB-Coder ist offline Megabyte
    Mein System
    MainboardMSI P35 Neo (MS-7360)
    ProzessorIntel QuadCore Q6600 - 2400 Mhz - 2x 4MB L2 Cache
    GrafikkarteGainward GeForce 8600 GT - 1024 MB DDR2 - 128bit - PCIe
    RAM2x 2GB Transcend JM4GDDR2-8K - DDR2-800 (400 MHz)
    Festplatte(n)WesternDigital WD5000AAKS-65YGA0 (500 GB - SATA) Seagate ST3120022A (120 GB - IDE)
    Andere LaufwerkeHL-DT-ST DVD-RAM GSA-H55L
    Netzteil (inkl. Spannungswerte)Apevia ATX-AS600W-BK Input: 230V | 50 Hz | 5A Total Output: 600W max +12,+5,+3.3 Combine: 580W
    SoundkarteonBoard Sound
    BetriebssystemWindows 7 Home Premium 64bit
    AV-SoftwareAvira AntiVir Personal
    FirewallComodo Firewall Pro
    System-/OptimierungstoolsSpybot - Search & Destroy HijackThis Malwarebytes' Anti-Malware
    Art des InternetzugangsDSL-16000
    Router/ModemArcor SpeedModem200
    MonitorVideoSeven 19" TFT
    Registriert seit
    04.2007
    Ort
    406XX / NRW
    Beiträge
    1.684
    Versuch mal den Pfad in " " zu setzen.
    Wozu dient der Parameter -s bei der start.exe eigentlich ? Nurmal aus reiner Neugier gefragt.
    Code:
    echo programmpfad\start.exe -s > "%AllUsersProfile%\Startmenü\Programme\Autostart\Start.bat"
    MfG VB-Coder

  3. #3
    Registriert seit
    04.2007
    Beiträge
    264
    Gänsefüßel hab ich schon probiert. Gleiches Resultat der Verschiebung, nur mit zwei Gänsefüßeln mehr in der ungewollten Datei.

    Das -s steht dafür, dass mir das Programm die Netzwerktreiber mit lädt und nicht denkt, es müsse nur auf dem lokalem PC arbeiten.
    Geändert von Chickenmarkus (27.04.2009 um 17:48 Uhr)
    Der beste Weg einen PC zu beschleunigen, ist mit 9,81 m/s².
    Die Lösung des Problems ist niemals die Gewalt, doch manchmal hilft es, wenn es auch mal knallt.

  4. #4
    Registriert seit
    06.2006
    Beiträge
    1.905
    Batch ist DAS Lernprogramm für alle schlaueren Programme > dort lernt man, dass ein falscher Buchstabe oder Befehl...
    ...alles missraten lässt... und das ziemlich gefahr- und mühelos...

    Warum verwendest Du "Echo"? > Das zeigt den Befehl in der Konsole an, tut sonst aber nichts...

    Der Befehl ist >>>
    C:\DeinPfadUndDateiName /Parameter

    Je nachdem auch >>>
    "DeinPfadUndDateiName /Parameter" .... in Anführungszeichen setzen
    oder >>>
    "DeinPfadUndDateiname" /Parameter
    oder >>>
    DeinPfadUndDateiName "/Parameter"
    ...oder sonst eine Variante...

    Ausprobieren, was die Batch und Dein Programm akzeptieren können....

    Gruss Urs

  5. #5
    Registriert seit
    09.2006
    Ort
    MOL
    Beiträge
    7.326
    Hallo,
    wie wäre es mit dem Code?
    Code:
    cd %AllUsersProfile%
    cd Startmenü\Programme\Autostart
    echo programmpfad\start.exe -s > Start.bat
    cd \
    Die besten Kapitäne stehen am Ufer.

  6. #6
    Registriert seit
    04.2007
    Beiträge
    264
    @Urs2
    Hast im Prinzip recht, aber echo kann auch noch viel mehr.
    Ich nutze nun grad "eine 2te Datei erzeugen, ergänzen", ungefähr aus der Mitte von http://www.libe.net/themen/BATch-Befehle.php
    Ergänze ich da meinen Pfad direkt nach dem echo zu "programmpfad\start.exe -s", habe ich in der neu erstelen Batch halt noch zwei Gänsefüßel mehr.


    @Hascheff
    Hab's mal probiert. Funktioniert schon weiter, indem es mir nun die richtige Datei erstellt, aber noch im allgemeinen AllUser-Ordner.
    "cd Startmenü\Programme\Autostart" findet er dann nicht. Noch weiter auseinander genommen und es scheitert am "cd Startmenü".
    Und siehe da, es kann nur an etwas liegen, was ich immer unbeachtet hab lassen. Egal wann, wie und in welcher Kombination "Startmenü" in der Batch auftaucht, es wird immer "Startmen³" ausgeführt, obwohl er das "ü" in der direkten Eingabe im CMD ja akzeptiert.

    Das wird wahrscheinlich auch für den Misserfolg des aller ersten Codes gesorgt haben.
    Aber wieso kommt Batch net mit Umlauten klar und wie verklicker ich ihm das?

    EDIT:
    Weder "chcp 1252" noch "chcp 850" helfen. Mit Codepage 850 verweigert's mir dann sogar auch im CMD das ü.
    Geändert von Chickenmarkus (28.04.2009 um 11:42 Uhr)
    Der beste Weg einen PC zu beschleunigen, ist mit 9,81 m/s².
    Die Lösung des Problems ist niemals die Gewalt, doch manchmal hilft es, wenn es auch mal knallt.

  7. #7
    Registriert seit
    09.2006
    Ort
    MOL
    Beiträge
    7.326
    Das wird wahrscheinlich auch für den Misserfolg des aller ersten Codes gesorgt haben.
    Das glaub ich nicht. Da waren eindeutig die Leerzeichen in "Dokumente und Einstellungen" schuld.

    Zitat Zitat von Chickenmarkus Beitrag anzeigen
    Egal wann, wie und in welcher Kombination "Startmenü" in der Batch auftaucht, es wird immer "Startmen³" ausgeführt, obwohl er das "ü" in der direkten Eingabe im CMD ja akzeptiert.
    Gestern hab ich auch direkt in der Eingabeaufforderung getestet. Diesmal habe ich eine Batch erstellt.

    1. Test: einfach "dir > test.txt" im richtigen Ordner als Batch. Damit man das ü sieht, muss man beim Öffnen von Test.txt als Zeichensatz ASCII wählen. (heißt in meinem Editor DOS)

    2. Test: Vor dir > test.txt noch "cd startmenü" eingefügt. Beim ersten Speichern als Zeichensatz "Standard" gelassen. (Ist unter Windows ja ANSI)
    Es kam keine Test.txt, also die Batch brach mit Fehler ab.
    Jetzt speicherte ich mit "DOS" also ASCII als Zeichensatz, im Startmenü entstand eine Test.txt.

    Lange Rede, kurzer Sinn: du musst beim Speichern der Batch den ASCII-Zeichensatz wählen.

    Gruß, Hascheff
    Die besten Kapitäne stehen am Ufer.

  8. #8
    Registriert seit
    04.2007
    Beiträge
    264
    Zitat Zitat von Hascheff Beitrag anzeigen
    Lange Rede, kurzer Sinn: du musst beim Speichern der Batch den ASCII-Zeichensatz wählen.
    Schön, eine Lösung. Wenn ich sie jetzt noch verstehen würde.

    Wie mit ASCII speichern?
    Chcp 1252 und 850 zum Umstellen innerhalb der Batch haben bei mir ja nicht geholfen.
    Aber sie direkt mit ASCII-Code zu speichern, wüsste ich jetzt nicht, wie ich das anstellen soll. Finde im Windoof-Editor auch keine Einstellung, wo ich das iwi einstellen könnte.
    Der beste Weg einen PC zu beschleunigen, ist mit 9,81 m/s².
    Die Lösung des Problems ist niemals die Gewalt, doch manchmal hilft es, wenn es auch mal knallt.

  9. #9
    Avatar von TheD0CT0R
    TheD0CT0R ist offline Dr. h.c. Mod
    Mein System
    MainboardAsus L3500D (SiS 740)
    ProzessorMobile AMD Athlon XP 2000+
    GrafikkarteSiS M650
    RAM1536 MB DDR SDRAM
    Festplatte(n)IC25N040ATMR04-0
    Andere LaufwerkeTrekStor NDAS 300 GB TrekStor NDAS 160 GB Philips NAS 500 GB
    BetriebssystemMS Windows 2000 Professional SP4 UR1
    AV-SoftwareAvira AntiVir Personal Edition Premium
    Art des InternetzugangsDSL-1500
    Router/ModemD-Link DIR-100
    Monitor15" TFT
    Registriert seit
    12.2003
    Ort
    Lonsheim
    Beiträge
    17.267
    Im Windows-eigenen Editor kannst du beim Speichern unter... die Codierung einstellen.
    Nicht gesicherte Daten sind verlorene Daten.
    Geschwindigkeit des Internetnetzugangs - Grundlagenwissen >Klick<

Seite 1 von 3 1 2 3 LetzteLetzte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  
12
Content Management by InterRed