쉘 스크립트 중지 및 시작

쉘 스크립트 중지 및 시작

프로세스를 시작하기 위해 간단한 스크립트를 만들었지만 프로세스가 수동으로 실행/중지되므로 중지 단계를 추가하는 방법을 잘 모르겠습니다.

현재 프로세스를 시작하기 위해 단일 명령줄을 사용합니다.

omrun dssdaemon <a string to run>

그런 다음 이를 중지하려면 일반적인 ps 명령을 사용합니다.

ps -ef | grep -i dssdaemon

kill -9 <PID>

여기까지 왔어

#!/bin/sh
# Priti's script to start dss daemon
pid=$(ps -ef | grep dssdaemon | grep -v grep | awk '{print $2}')
DSS_START=omrun dssdaemon <a string to run>

$DSS_START; sleep 15;
echo "DSS Daemons is running with PID[S] below" && $pid

이 프로세스에는 pidof를 사용하는 데 몇 가지 제한 사항이 있으므로 awk 문자열을 만들었습니다.

상태 및 종료 단계를 추가하는 데 도움이 필요합니다.

이 같은

# status dss daemon
DSS Daemon is running with PID[S] below
123456
432145

# start dss daemon
DSS Daemon is started with PID[S] below
123456
432145

# stop dss daemon
DSS Daemon with PID[S] below were killed
123456
432145

답변1

killall또는 도구를 사용해 보세요 pkill. 이전과 마찬가지로 프로세스에 신호를 보냅니다 kill. 그러나 pid로 프로세스를 찾는 대신 이름으로 프로세스를 찾습니다. 여러 악마가 실행 중이라면 모든 악마가 신호를 받게 됩니다.

killall -9 dssdaemon

관련 정보