하나의 명령으로 프로세스 실행 및 재시작

하나의 명령으로 프로세스 실행 및 재시작

하나의 명령으로 프로세스를 실행하고 다시 시작할 수 있는지, 즉 ps 명령을 사용하지 않고 프로세스 목록에서 명령을 찾은 다음 해당 특정 pid를 다시 시작할 수 있는지 아는 사람이 있습니까?

답변1

nice(대신 ) 만 사용하세요 renice. 예를 들어:

nice -n 10 command

command낮은 우선순위로 실행 됩니다 .

답변2

제가 언급했듯이 @glenn-jackman이 답을 제공해 드립니다. 하지만 좀 더 자세히 설명하자면, 이 명령에 더 높은 우선순위를 부여하고 싶지만 루트로 실행하지 않으려는 경우 함수(및 sudo)를 사용할 수 있습니다.

nice_cmd() {
  PRIORITY=$1 ; shift
  CMD=$1 ; shift
  ${CMD} $@ & cmdpid=$!
  sudo renice -n ${PRIORITY} -p ${cmdpid}
}

그런 다음 실행하십시오(Sudo 구성 방법에 따라 사용자 비밀번호를 묻는 메시지가 나타날 수 있음).

$ nice_cmd -5 vim somefile
$ fg

다른 터미널 상단에서 값을 다시 확인할 수 있습니다.

답변3

nice 및 renice 명령을 사용한 Linux 프로세스 스케줄링의 예는 다음 위치에서도 찾을 수 있습니다.http://www.vmexplore.com/tuning-process-scheduling/

관련 정보