bash passwort abfrage
bash passwort abfrage
ich brauche eine einfache passwort abfrage für die bash. das passwort muss nicht irgendwie verschlüsselt sein. der zugang soll nur erschwert werden.
Re: bash passwort abfrage
Ich denke, er meint folgendes:<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
#!/bin/bash
PASSWORD="geheim"
echo -n "Bitte Passwort eingeben: "
# Terminaleinstellungen merken & Ausgabe der eingegebenen Zeichen ausschalten
OLDSTTY=$(stty --save)
stty -echo
read PW
# Terminaleinstellungen restaurieren
stty "$OLDSTTY"
if [ "$PW" != "$PASSWORD" ] ; then
echo "Falsches Passwort."
exit 1
fi
echo "OK."
exit 0
</font><hr></pre></blockquote>
Oder?
Jochen
#!/bin/bash
PASSWORD="geheim"
echo -n "Bitte Passwort eingeben: "
# Terminaleinstellungen merken & Ausgabe der eingegebenen Zeichen ausschalten
OLDSTTY=$(stty --save)
stty -echo
read PW
# Terminaleinstellungen restaurieren
stty "$OLDSTTY"
if [ "$PW" != "$PASSWORD" ] ; then
echo "Falsches Passwort."
exit 1
fi
echo "OK."
exit 0
</font><hr></pre></blockquote>
Oder?
Jochen
Re: bash passwort abfrage
@Jochen: Warum die Terminaleinstellungen speichern/wiederherstellen ? Was spricht gegen ein einfaches
echo -n "Ihr Passwort bitte: "; read -s PW ?
echo -n "Ihr Passwort bitte: "; read -s PW ?
Re: bash passwort abfrage
Öh... vielleicht weil mir eine Option "-s" zu read bis dato unbekannt war?!? <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle"> Man lernt halt nie aus!
Wenn man also die bash verwendet, wie ich es auch im Skript per She-Bang angegeben habe, ist "read -s" sicherlich die einfachste Möglichkeit.
Wer dagegen auf Portabilität Wert legt (legen muss), ersetzt <pre>OLDSTTY=$(stty --save)</pre> durch <pre>OLDSTTY=`stty -g`</pre> und hat ein einwandfreies Skript, das so unter sh/bash/ksh/zsh läuft.
Jochen
Wenn man also die bash verwendet, wie ich es auch im Skript per She-Bang angegeben habe, ist "read -s" sicherlich die einfachste Möglichkeit.
Wer dagegen auf Portabilität Wert legt (legen muss), ersetzt <pre>OLDSTTY=$(stty --save)</pre> durch <pre>OLDSTTY=`stty -g`</pre> und hat ein einwandfreies Skript, das so unter sh/bash/ksh/zsh läuft.
Jochen
Re: bash passwort abfrage
@ratte: In der sh kennt "read" kein "-s". Denke, war ein Typo.
Meine Fragte war eigentlich, was der "tty Kram" soll. Im Nachhinein vermutlich genau das, was "-s" macht, die Passworteingabe "verstecken". War mir vorher aber nicht klar; das "-s" ist eigentlich mehr so mit reingerutscht.
Meine Fragte war eigentlich, was der "tty Kram" soll. Im Nachhinein vermutlich genau das, was "-s" macht, die Passworteingabe "verstecken". War mir vorher aber nicht klar; das "-s" ist eigentlich mehr so mit reingerutscht.