쉘 스크립트의 다음 줄로 이동하기 전에 프로세스가 완료될 때까지 기다리십시오.

쉘 스크립트의 다음 줄로 이동하기 전에 프로세스가 완료될 때까지 기다리십시오.

백업을 생성하는 스크립트가 있습니다. /home/ftp.sh명령을 실행하기 전에 백업이 준비되었는지 확인해야 합니다 . 어떻게 해야 하나요? CentOS 5.6을 사용하고 있습니다.

#!/bin/bash
tar -Pcf /home/temp_backup.tar /home/myfiles/
wait %%
/home/ftp.sh

답변1

당신은 이미 이 일을 하고 있습니다.

명령이 완료되기를 기다리는 것은 일반적인 쉘 동작입니다. ( sleep 5셸 프롬프트에 입력해 보십시오.) 유일한 시간아니요&명령에 연결하거나 명령 자체가 효과적으로 상황에 맞는 작업을 수행할 때 발생합니다 (후자는 약간 너무 단순합니다).

wait %%스크립트에서 명령을 제거하면 다음과 같은 오류 메시지가 나타날 수 있습니다 wait: %%: no such job. (질문: 실제로 그러한 메시지가 인쇄됩니까?)

tar주문 했다는 증거가 있나요?아니요명령이 시작되기 전에 완료하시겠습니까 /home/ftp.sh?

그런데 사용자의 홈 디렉터리 외부에 있는 항목을 /home.

(이 내용의 대부분은 이미 댓글에서 다뤄졌다는 것을 알고 있지만 실제 답변이 있어야 한다고 생각했습니다.)

답변2

당신은 그것을 사용할 수 있습니다 :

wait $!

wait %%스크립트에서 제거되었습니다.

관련 정보