두 개의 스크립트를 하나로 결합

두 개의 스크립트를 하나로 결합

두 개의 스크립트가 있습니다. 두 스크립트 모두 동일한 서버에 있습니다(서버 A)

첫 번째(서버 A) 다른 서버와의 SSH 연결 설정(서버 B), 두 번째 스크립트를 실행합니다.

예를 들어

*script1*
ssh $ipaddress var="$var1" "bash -s" < $script2

스크립트 2그런 다음 실행서버 B.

이것을 하나의 스크립트로 결합하는 방법이 있습니까? 따라서 먼저 SSH 연결을 설정한 다음 나머지 스크립트를 실행합니다. 예를 들면 다음과 같습니다.

#!/bin/bash

#Make an SSH Connection to another server
ssh $ipaddress

#Now Execute the rest of the script
do stuff here . . .
and here . . .

답변1

ssh $ipaddress /bin/bash <<END
do stuff here . . .
and here . . .
END

답변2

script2로컬 디렉토리에서 가정

#!/bin/bash
if scp script2 $ipaddress:/tmp
then
   ssh $ipaddress /tmp/script2 "arg" >& /my/result.$ipaddress
   ssh $ipaddress rm /tmp/script2 
fi

추가 전송 수수료를 지불하게 되지만, 중요하지 않은 경우 ( 한두 개가 script2아닌 경우 ) 아마도 그만한 가치가 있을 것입니다.tailwc

관련 정보