Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Guten Tag zusammen und ein gutes neues Jahr 2014 erst mal.

Ein neues Jahr heißt aber leider auch weitere Probleme, und da ich euch so gern habe meine Frage an euch :)

ich würde gerne über den echo Befehl einen Inhalt in eine .BAT Datei schreiben lassen.

Also ich führe ein Konfigurationstool aus bei dem zum Beispiel einer Datenträgerbezeichnung abgefragt wird.

Diese Bezeichnung soll dann mit einem weitern Befehl in eine .BAT Datei geschrieben werden.

mein Code schaut folgend aus.


.

.

.

	echo Name des Volumens eingeben:

	set/p Volumennamen=

	echo format d: /v:%Volumennamen% /q > format.txt

	echo pause >> format.txt

	ren "format.txt" format.bat

	pause

.

.

.

dads Umbennen habe ich schon mal mit reingenommen, da man anscheinend nicht direkt in eine -BAT Datei schreiben kann, und mir diese Lösung am einfachsten schien.

Leider funktioniert es nicht, es wird nur unendlich lange die erste Zeile Inhalt der Datei in der CMD wiedergegeben.

Egal ob ich das als TXT oder als BAT Datei gespeichert habe.

Kann mir da jemand bitte helfen ?

Danke im Voraus und verbleibe mit Hoffnung auf eine richtige Antwort

Mit freundlichen Grüßen

Wolfi

Hy,

also wenn ich das richtig verstanden habe, soll, wenn man die format.bat ausführt in der cmd Folgendes zu sehen sein:

format d: /v:test /q

Drücken Sie eine beliebige Taste . . .

-----------------------------------

Versuch's mal so:

@echo off

echo Name des Volumens eingeben:

set/p Volumennamen=

echo @echo off > format.txt

echo echo format d: /v:%Volumennamen% /q >> format.txt

echo pause >> format.txt

ren "format.txt" format.bat

pause

... und wenn Du den "Format" Befehl benutzen möchtest schreibst Du die eine Zeile einfach so:

echo format D: /Q /V:%Volumennamen% >> format.txt

Die erstellte Batchdatei "format.bat" muss man dann allerdings als Administrator ausführen - sonst macht die Batch irgendwie nicht, was sie soll.

Allerdings kannst Du bei den Volumennamen (/V:Bezeichnung) nur ein zusammenhängendes Wort eingeben - falls Du mal vor hast die Batch auf externe Datenträger anzuwenden und denen z.B. die Bezeichnung Mein USB geben möchtest, würde ich die Batch etwas umschreiben:

@echo off

echo Name des Datenträgers eingeben:

set/p Volumenname=

echo @echo off > format.txt

echo format F: /Q /FS:NTFS /V:"" >> format.txt

echo label F: %Volumenname% >> format.txt

echo pause >> format.txt

ren "format.txt" format.bat

pause

Bearbeitet von chuckson

  • Autor

das bingt mich irgendwie nicht weiter, sorry...

vielleicht ist es ein Verständigungsproblem was hier vorliegt.

Ich mächte in einer Bat Datei nach einem Volumnamen fragen für die 2-te Partition.

Danach soll eine fertige BAT Datei geschrieben werden, welche des Befehl zur Ausführung der Formatierung mit der Volumenbezeichnung beinhaltet.

Wenn ich aber über eine BAT datei eine ander BAT-Datei erstellen lasse (wie oben der Code j auch macht) dann wird der Befehl an für sich nicht ausgeführt sonden nur die erste Zeile der BAT -Datei immer und immer wider in der CMD angezeigt.

Wenn ich aber über eine BAT datei eine ander BAT-Datei erstellen lasse (wie oben der Code j auch macht) dann wird der Befehl an für sich nicht ausgeführt sonden nur die erste Zeile der BAT -Datei immer und immer wider in der CMD angezeigt.
Dir ist klar, dass das reine Schreiben von Textzeilen in eine Datei nicht automatisch zum Ausführen dieser Zeilen führt? Falls ja: Wie führst du denn aus?
  • Autor

@ Klotzkopf

Wenn ich eine txt Datei nehme, in diese Datei


format d:

eingebe, diese Datei dann als Batch Datei abspeicher und dann ausführe dann führt er das Programm "format.exe" aus, oder ???

Wenn aber die Zeile "format d:" eine Batch in eine TXT Datei reinschreibt, und ich es dann ausführe dann bekomme ich eine CMD, in der mir ununterbrochen "format d:" angezeigt.

Wo ist der Unterschied, ob ich es reinschreibe, oder ein Programm ?

Wenn ich eine txt Datei nehme, in diese Datei


format d:
[/code]

eingebe, diese Datei dann als Batch Datei abspeicher und dann ausführe dann führt er das Programm "format.exe" aus, oder ???

Ja.

Wenn aber die Zeile "format d:" eine Batch in eine TXT Datei reinschreibt, und ich es dann ausführe dann bekomme ich eine CMD, in der mir ununterbrochen "format d:" angezeigt.
Du kannst Textdateien nicht ausführen. Es wird die mit dieser Art von Dateien verknüpfte Anwendung gestartet. Was die dann mit der Datei macht, hängt von der Anwendung ab. Üblicherweise ist das der Editor, der zeigt sie einfach nur an.

Du schreibst immer wieder von Ausführen, in deinem Code ist davon aber nichts zu sehen: Daher nochmal die Frage: Wie führst du die geschriebene Datei aus?

  • Autor

in dem letzten Beitrag habe ich es vergessen, dass die Textdatei natürlich in eine Batch Datei umgewandelt wird. Im Originalcode im ersten Post ist es klar zu erkennen und das Problem auch richtig geschildert.

Im Originalcode im ersten Post ist es klar zu erkennen und das Problem auch richtig geschildert.
Mag sein, dass ich gerade betriebsblind bin.

Im ersten Beitrag sehe ich nur, wie Textzeilen in eine Datei geschrieben werden, und diese Datei umbenannt wird.

Welche Zeile bewirkt deiner Meinung nach die Ausführung von format.bat?

NACHTRAG:

Ich vermute, das Problem liegt darin, dass der format-Aufruf nicht die Ausführung des Shell-Kommandos, sondern der .bat-Datei selbst bewirkt. Gib der Datei mal einen anderen Namen.

Bearbeitet von Klotzkopp

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.