#!/bin/sh
set -x
echo "Starting Time at "`sshpass -p xxx ssh -o StrictHostKeyChecking=no UN@IP 'date'`
nohup ab -n 20000 -c 70 https://xxx.xxxxxx.com/xxx/xxxx/new.jsp &
echo "Ending Time at "`sshpass -p xxx ssh -o StrictHostKeyChecking=no UN@IP 'date'`
#!/bin/sh
set -x
echo "Starting Time at "`sshpass -p xxx ssh -o StrictHostKeyChecking=no UN@IP 'date'`
nohup ab -n 20000 -c 70 https://xxx.xxxxxx.com/xxx/xxxx/new.jsp &
echo "Ending Time at "`sshpass -p xxx ssh -o StrictHostKeyChecking=no UN@IP 'date'`
위 스크립트는 https://xxx.xxxxxx.com/xxx/xxxx/new.jsp
동시성 횟수가 70인 20,000개의 요청을 보냅니다. 명령의 시작과 끝을 인쇄하고 싶습니다 nohup
. 하지만 이 명령을 실행하면 스크립트를 시작한 후 Starting Time
및 가 Ending Time
동시에 인쇄됩니다.
올바른 종료 시간을 얻는 방법은 무엇입니까?
답변1
배경인가 전경인가?
표시하는 코드가 전체 코드인 경우 실행 중인 이유를 이해할 수 없으면 nohup .. &
해당 코드를 제거하고 두 번째 에코를 입력하면 ab
프로그램이 종료됩니다.
코드가 조각인 경우 wait
두 번째 에코 전에 사용하세요. 예를 들어
echo "Starting Time at "`sshpass -p xxx ssh -o StrictHostKeyChecking=no UN@IP 'date'`
nohup ab -n 20000 -c 70 https://xxx.xxxxxx.com/xxx/xxxx/new.jsp &
## some shell
wait
echo "Ending Time at "`sshpass -p xxx ssh -o StrictHostKeyChecking=no UN@IP 'date'`
- 매뉴얼의 대기를 참조하십시오
bash
.