다음 셸 스크립트가 있습니다. 목적은 대상 파일의 각 행 (그 경로가 스크립트에 대한 입력 매개 변수)을 통해 반복하고 각 행에 대해 작업하는 것입니다. 이제 대상 파일의 첫 번째 줄에서만 작동하며 해당 줄이 처리 된 후 중지됩니다. 내 스크립트에 문제가 있습니까?
#!/bin/bash
# SCRIPT: do.sh
# PURPOSE: loop thru the targets
FILENAME=$1
count=0
echo "proceed with $FILENAME"
while read LINE; do
let count++
echo "$count $LINE"
sh ./do_work.sh $LINE
done < $FILENAME
echo "\ntotal $count targets"
에서는 do_work.sh
몇 가지 ssh
명령을 실행 합니다.
source
단순히 종료 또는 으로 호출 할 수 있습니다 exec
. 그러나이 코드는 정품 보이지 않는, 그 반향을 알 것 영업 이익은 필요 -e
... 제대로 표시 라인 피드
do_work.sh
달리 ssh
나요?
do_work.sh
소스 를 표시하고 디버그하기 위해 실행 do.sh
하는 set -x
것이 더 좋습니다 .