Sida 1 av 1

Meny för litet program i terminalen [LÖST]

Postat: 05 mar 2010, 23:50
av Andersen
Jag har ett litet program som körs i terminalen för att skapa krypteringsnycklar. Jag behöver göra så att folk kan logga in med ssh för att kunna skapa nycklarna. Jag vill däremot inte att de kan snoka runt i systemet. Jag gjorde ett försök med dialog som blev jäkligt snyggt & prydligt, men upptäckte till min fasa att det inte går att klippa och klistra.

Kommandot är enkelt att använda, bara köra & ange växel samt lösenord.

Det jag behöver är två alternativ i en meny, samt ett inmatningsfält. När man har valt t.ex menyval1 så ska man bli tillfrågad om lösenord. När man har fylt i lösenordet så trycker man på retur, och sedan ska programmet köras enligt följande.

kommando -växel lösenord


Om det är någon som undrar vad jag ska ha det till så är det för att skapa nycklar för SRTP, d.v.s. krypteringsnycklar för IP telefoni.

Ett webgränssnitt skulle också fungera, men jag vet däremot inte hur man anropar en binärfil via ett http formulär. Jag är en riktig noob på området, men jag försöker så gott jag kan.

Re: Meny för litet program i terminalen

Postat: 06 mar 2010, 00:18
av mcNisse
jag är inte säker på att jag förstår vad du är ute efter...

är det någon sådant här du är ute efter?

Kod: Markera allt

1. val 1
2. val 2
val>
sedan

Kod: Markera allt

ange lösen>
och sedan utloggning igen efter att nyckeln har skapats?

Re: Meny för litet program i terminalen

Postat: 06 mar 2010, 00:21
av mcNisse
Såg att det var ditt första inlägg. Ursäkta mig. Du är mycket välkommen till ubuntu-se.org!

Re: Meny för litet program i terminalen

Postat: 06 mar 2010, 00:34
av Andersen
Man tackar. :)

Jag är ute efter vad du beskrev, men jag tror att jag kan greja något enkelt som fungerar. Det blir inte lika bra som med dialog, men det gick ju inte att klippa och klistra från dialogrutorna. :-\

Edit: Jag löste det, men det finns säkert bättre sätt.

Kod: Markera allt

#!/bin/sh
clear
quit="no"

f_1 () {
clear
echo
echo -n "Please input your: "
read key
clear
application -a "$key"
read -p "Press Enter to continue:"
}

f_2 () {
clear
echo
echo -n "Please input your: "
read key
clear
application -s "$key"
read -p "Press Enter to continue:"
}

while [ $quit != "yes" ]
do
clear
echo
echo "1. Option 1"
echo "2. Option 2"
echo "3. Quit"
echo -n "Your choice? : "
read choice

case $choice in
1) f_1 ;;
2) f_2 ;;
3) quit="yes" ;;
*) echo "\"$choice\" is not a valid option"
sleep 2 ;;
esac
clear
done