Eingabezeichen durch Windows .bat-Datei unterdrücken?

Herakles

Profifragensteller
Moin!

Eine gewagte Frage in diesem Forum ;)

Es geht um Windows-Batch Dateien. Wie kann ich es unterdrücken, dass eine Tastatureingabe auf der Kommandozeile "ge-echo-t" wird.

Beispielweise bei der Eingabe eines Passwortes:

Code:
set /p PASSWORD=

So würde das Passwort im Klartext auf dem Bildschirm angezeigt. Weiß jemand, wie man diese Anzeige unterdrücken kann oder durch "*" ersetzen könnte?

Danke, Herakles

Falls dieser Thread trotz des Unterforums "programmieren" nicht ins Board passt, löscht ihn bitte. Es ist ein kühner Versuch :D
 
Mal eben eine schnelle Antwort reingeworfen, bevor ich den Link komplett gelesen habe:

Code:
echo off

stellt nur die Befehlsanzeige ein oder aus. Ge-echo-t wird weiterhin munter. Man sieht also kein

Code:
C:\windows\ist\schwul>

mehr, wenn man etwas tippt, es wird jedoch sehr wohl weiterhin ge-echo-t. Die Idee hatte ich auch bereits :(

Aber ich habe ja noch die verlinkte Seite zu lesen!

Bis denne
 
Hab grad kein Windows zur Hand, aber man kann die Ausgabe eines Befehls an NUL weiterleiten.
Code:
pause>NUL
gibt z.B. keine Ausgabe an.
Vielleicht kannst du damit was machen.
Vielleicht gilt das aber nur für Ausgaben und nicht für Eingaben...
 
geh in ein windows-forum, da werden dir sicher mehr helfen können als hier.

auf bald
oenone
 
Hallo Herakles,

Auszug BatchKurs:

http://www.antonis.de/dos/batchtut/bat-kurs/index.htm#03

Weitere Informationen
---------------------
Interresant wird der ECHO-Befehl erst mit Umleitungen/Pipes.
Außerdem können mit Hilfe der ANSI-Sequenzen Farben und Cursor-
Steuerungen (u.a.) ins Spiel gebracht werden. Mehr dazu später.


=========== ECHO Umleitung =========================


Das Thema "Umleitungen" soll eigentlich erst später behandelt
werden, aber die ECHO-Umleitung wird schon mal vorweg genommen,
weil sie recht unproblematisch ist.

Ein ECHO-Text kann sehr einfach mit einem ">"-Zeichen (Pfeil nach
rechts) in eine Datei oder an ein anderes Gerät - wie LPT1, also
an den Drucker - umgeleitet werden. Beispiel:

ECHO irgendwas> TEST.DAT
ECHO irgendwas> LPT1

Genau wie auf dem Bildschirm, wird auch in diesen Fällen der Text
mit einem Zeilenvorschub (CR,LF) ausgegeben. Eine leere Zeile
(also nur ein Zeilenvorschub) kann so ausgegeben werden:

ECHO.> TEST.DAT

Die angegebene Datei wird neu angelegt, d.h. wenn diese Datei
bereits vorhanden war, wird sie ohne Warnung überschrieben!!

Es ist aber auch möglich, eine Zeile an eine vorhandene Datei
anzufügen. Dazu werden einfach zwei Pfeile (">>") verwendet:

ECHO eine Zeile > TEST.DAT
ECHO noch eine Zeile >> TEST.DAT

Übrigens: eventuelle Leerzeichen vor dem Pfeil werden mit in die
Datei geschrieben!

Die ECHO-Umleitungen lassen sich gut auf der Befehlsebene testen.


=========== PAUSE ==================================


Mit der PAUSE-Anweisung wird der BAT-Ablauf angehalten. DOS gibt
dazu standardmäßig diese (oder eine ähnliche) Aufforderung aus:

Weiter mit beliebiger Taste . . .

Ein Abbruch ist an dieser Stelle, wie üblich, mit Control-C oder
Control-BREAK (Strg-Unterbr.) möglich.

Soll mehr als nur die Standard-Meldung erscheinen, können vorher
geeignete ECHO-Anweisungen gemacht, werden, z.B.:

ECHO Bitte Diskette wechseln!
Pause

Beim PAUSE-Befehl werden weitere Angaben in der selben Zeile
ignoriert. Allerdings werden eventuelle Umleitungszeichen <|> von
DOS konsequent abgearbeitet, was selten Sinn macht - bis auf diesen
Fall:
PAUSE > NUL

Damit wird die Ausgabe der Standardaufforderung ins Nichts
umgeleitet, falls man etwas anderes per ECHO formuliert hat.

Hinweis:

Bis DOS Version 5.0 war es nicht möglich, die gedrückte Taste
anschließend abzufragen. Auch eine automatische Fortsetzung nach
einer gewissen Zeit war nicht vorgesehen. Ab DOS 6.0 wird dafür
das Hilfsprogramm CHOICE mitgeliefert (s. Lektion CHOICE).

gruss rudy

ps:

weitere Bücher zur Batch-Programmierung:
http://de.wikibooks.org/wiki/Batch-Programmierung

oder mal was ganz anderes mit Batch:
http://www.sdm.de/de/publikationen/fachartikel/2004/sdm_pub_js_fuchs/index.html

pps:

so dann gilt zu beachten das es unterschiede in der Syntax zu Dos, Win95/98 sowie NT/2000 und letzendlich Xp gibt...
 
Zuletzt bearbeitet:
Zurück
Oben