Sida 1 av 1

Hjälp med bash

Postat: 12 dec 2014, 13:52
av Medila
Tjena


Jag har ett meny script som jag behöver ändra/utveckla vidare.
Jag vet dock inte hur jag ska göra!

Jag vill att scripet ska vara uppdelat i typ 2 delar.

STEG1: När jag öppnar menyn så vill jag ha ett val vilket "kluster" jag ska gå till!

tex

1. Bromma
2. Huddinge
3. Hammarby
etc
etc

där själva anslutningen ska se ut som nedan

"ssh bromma.lira.se"
"ssh huddinge.lira.se"
"ssh hammarby.lira.se"

problemet här är att jag måste ansluta med "sudo su - user"
Hur får jag till detta i scriptet? I själva SSH strängen (kan ej använda nycklar)

När jag trycker 1 vill jag komma rakt in till ssh bromma.lira.se sudo su - user

STEG2: Efter detta vill jag att det automatsikt ska visas de underliggande valen, i detta fall olika servrar. (se nedan)
Hur får jag till så det "poppar" upp automatiskt?

1. Disk
2. CPU
3. LOGG
etc
etc

Så här såg mitt tidigare script ut som jag vill återanvända gällande STEG2 men även lägga till STEG1 i!
Ideér?

#!/bin/bash
# meny.sh


while :
do
### menu
echo ""
echo -e "Server: \e[00;31m$(hostname)\e[0m"
echo "-------------------------------"
echo " M E N Y"
echo "-------------------------------"
echo "1. DISK"
echo "2. CPU"
echo "3. LOGG"
echo "4. etc"
echo "5. etc"
echo "6. etc"
echo "7. Quit"
echo ""
echo ""
### choice
read -p "Val: [ 1 - 7 ] " choice
###
case $choice in
1)
echo "Ansluter..."
ssh -l DISK vv10
exit 0
;;
2)
echo "Ansluter..."
ssh -l CPU vv11
exit 0
;;
3)
echo "Ansluter..."
ssh -l LOGG vv12
exit 0
;;

4) echo "Ansluter..."
ssh -l xxx xxxx
exit 0
;;

5) echo "Ansluter..."
ssh -l xxx xxxx
exit 0
;;

6) echo "Ansluter..."
ssh -l xxx xxxx
exit 0
;;

7|q|Q)
echo ""
exit 0
;;

*)
echo "Error: Felaktigt alternativ..."
read -p "Press [Enter] to return..." readEnterKey
;;
esac

done

Re: Hjälp med bash

Postat: 16 dec 2014, 17:56
av Nemo
Medila skrev:problemet här är att jag måste ansluta med "sudo su - user"
Hur får jag till detta i scriptet? I själva SSH strängen (kan ej använda nycklar)

När jag trycker 1 vill jag komma rakt in till ssh bromma.lira.se sudo su - user
Är det någon speciell anledning till att du måste ansluta md "sudo su - user"? Räcker det inte med att du kopplar upp med SSH mot angiven server och där loggar in med det användarnamn du vill använda?

Vad gäller ditt bash script är mina kunskaper begränsade, men kanske någon med större kunskaper än mig kan komma med några bra tips.

// Nemo

Re: Hjälp med bash

Postat: 17 dec 2014, 12:35
av johanre
sudo su - user
kommer du inte kunna göra. Det startar ett nytt skal och då är du inte kvar i det skalet du loggar in med via ssh. Vill du utföra saker via sudo är det:
sudo <kommando>
som gäller för att du skall kunna fortsätta vara kvar i skriptet.