쉘 스크립트를 실행할 때 다음 오류를 검색하는 방법

쉘 스크립트를 실행할 때 다음 오류를 검색하는 방법

원격 서버에 로그인하는 스크립트가 하나 있습니다. 그러나 스크립트를 실행하려고 하면 일부 오류가 발생합니다.

로그:

내 스크립트:

#!/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

하지만 오/피

[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

이 문제를 해결하도록 도와주세요.

감사합니다 MM SELVAM

답변1

ssh 명령은 숫자만 추가하는 것이 아니라 개행 문자도 추가합니다. 이는 변수에 정수가 아닌 "1\n"과 같은 내용이 있음을 의미합니다.

따옴표를 제거하십시오: S1=$(ssh -t selvam-odc-shell1 users | wc -w )

관련 정보