wie man folgenden Fehler abruft, wenn ich Shell-Skript ausführe

-1

Ich habe ein Skript, um mich am Remote-Server anzumelden. Aber ich habe versucht, das Skript auszuführen. Ein Fehler ist aufgetreten.

Protokolle:

Mein Drehbuch:

#!/bin/bash
S1=$(ssh -t selvam-odc-shell1 "users | wc -w ")
S2=$(ssh -t selvam-odc-shell2 "users | wc -w ")
S3=$(ssh -t selvam-odc-shell3 "users | wc -w ")
if [ "$S1" -le 100 ];
then 
ssh -t  selvam-odc-shell1 " bash"
if [ "$S2" -le 100 ];
then 
ssh -t  selvam-odc-shell2 "bash"
elif [ "$S3" -le 100 ]; 
then
ssh -t  selvam-odc-shell3 "bash"
else
echo " Shell has been more than 100 users.Please try again later
fi

Aber o / p

[user@selvam-odc-sunray2: ~]#./shell.sh
Connection to selvam-odc-shell1 closed.
Connection to selvam-odc-shell2 closed.
Connection to selvam-odc-shell3 closed.
: integer expression expected60
: integer expression expected 29

Bitte helfen Sie mir, dieses Problem zu beheben.

Danke MM SELVAM

Mariselvam
quelle
Versuchen Sie, 3 Shells mit Ihrem Skript zu öffnen?
LDC3
Ja. Schließlich muss ich mich in einer Shell anmelden
Mariselvam

Antworten:

0

Der Befehl ssh fügt nicht nur die Nummer, sondern auch eine neue Zeile hinzu. Das heißt, Ihre Variablen haben einen Inhalt wie diesen: "1 \ n", bei dem es sich nicht um eine Ganzzahl handelt.

Entfernen Sie die Anführungszeichen: S1 = $ (ssh -t selvam-odc-shell1 Benutzer | wc -w)

Marco
quelle
Können Sie das richtige Skript für oben
Mariselvam