Hjälp med bash

Här diskuteras programmering och utveckling
Medila
Inlägg: 14
Blev medlem: 12 aug 2013, 20:42
OS: Ubuntu

Hjälp med bash

Inlägg 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
Användarvisningsbild
Nemo
Inlägg: 731
Blev medlem: 16 aug 2010, 19:39
OS: Kubuntu
Utgåva: 18.04 Bionic Beaver LTS

Re: Hjälp med bash

Inlägg 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
Användarvisningsbild
johanre
Serveradmin
Inlägg: 3888
Blev medlem: 22 okt 2006, 09:13
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Malmö

Re: Hjälp med bash

Inlägg 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.
Skriv svar

Återgå till "Programmering och webbdesign"