내가하고 싶은 것은 서버 A에 SSH로 접속하고, 여러 그룹 명령을 병렬로 실행하고, 종료하고 서버 B로 들어가서 반복하는 것입니다.
echo "Entered node21"
ssh -T node21 << EOF
{
{ sh run_0.sh ; sh run_216.sh ; } &
{ sh run_1.sh ; sh run_217.sh ; } &
{ sh run_2.sh ; sh run_218.sh ; } &
} &>/dev/null 2>&1
EOF
echo "Entered node22"
ssh -T node22 << EOF
{
{ sh run_24.sh ; sh run_240.sh ; } &
{ sh run_25.sh ; sh run_241.sh ; } &
{ sh run_26.sh ; sh run_242.sh ; } &
} &>/dev/null 2>&1
EOF
그러나 첫 번째 서버(node21)에 들어간 후 스크립트가 중지되고 무기한 대기하는 것 같습니다. 단일 명령에 대해 작동하는 유사한 스크립트를 작성했습니다.
ssh -T node21 << EOF
{
sh run_0.sh &
sh run_1.sh &
} &>/dev/null 2>&1
EOF
echo "node22"
ssh -T node22 << EOF
{
sh run_12.sh &
sh run_13.sh &
} &>/dev/null 2>&1
EOF
이것은 잘 작동합니다(즉, node21에 들어오고 나가고 node22에서 명령을 실행합니다). 그래서 스크립트가 그룹 명령과 작동하지 않는 이유가 혼란스럽습니다.