대화형 bash 스크립트

대화형 bash 스크립트

저는 Apache 서비스를 종료하고 기능을 수행한 다음 다시 켜는 스크립트를 작성하고 있습니다.

각 프로세스에 대해 일종의 대화형 확인을 받고 싶습니다. 저는 printf에 익숙하지 않지만 제가 하려는 일에는 printf가 필요하다고 생각합니다.

아래는 스크립트의 일부입니다. 서비스를 종료할 때 서비스가 수행할 작업을 말한 다음 같은 줄에 "OK" 또는 "Not OK"를 보고하고 싶습니다.

즉.

Shutting down Apache service:

몇 초 후...

Shutting down Apache service: OK

#!/bin/bash

# Turn off Apache
echo "Shutting down Apache service:'

service apache2 stop

if ( $(ps -ef | grep -v grep | grep apache2 | wc -l) > 0 )
then
echo "NOT OK!"
else
echo "OK!"
fi

답변1

-nBash에서는 줄 끝을 인쇄하지 않는 옵션을 사용할 수 있습니다 .echo

echo -n Shutting down Apache service:

또는 다음을 사용하십시오.printf

printf '%s' 'Shutting down Apache service'

에 개행 문자를 포함하려면 템플릿에 printf넣으세요.\n

printf '%s\n' 'NOT OK!'

관련 정보