GNU Kill(1)은 언제까지 이름 인수를 허용합니까?

GNU Kill(1)은 언제까지 이름 인수를 허용합니까?

우리는 최근 GNU Kill이사양,이름을 인수로 사용하고 해당 이름을 가진 모든 프로세스를 종료하려고 시도합니다., pkill(1) 또는 Killall의 일부 구현과 동일합니다.

아직 GNU Kill 변경 로그를 찾지 못했습니다. 이 "기능"은 언제 추가되었나요?

답변1

소스코드를 찾아볼 수 있습니다.Savannah의 Gnu coreutils(또는 컴퓨터의 저장소를 복제), 특히 보기원천그리고변경 로그공익사업 kill. 그런 기능은 없었고 지금까지 없었습니다.

do {
      intmax_t n = (errno = 0, strtoimax (arg, &endp, 10));
      if (errno == ERANGE || pid != n || arg == endp || *endp)
        {
          error (0, 0, _("%s: invalid process id"), arg);
          status = EXIT_FAILURE;
        }
} while ((arg = *++argv));

이것당신이 링크한 맨페이지kill명령에 대해유틸리티 리눅스 컬렉션. 매뉴얼 페이지의 날짜에서 알 수 있듯이 이 기능은 꽤 오래되었습니다. 많은 Linux 시스템은 killGNU coreutils 또는프로세스패키지에서는 대부분 외부 명령보다는 셸의 내장 명령을 보게 됩니다. 이들 중 어느 것도 순수 명령 이름을 인수로 전달할 수 없습니다.

관련하여 bash, ksh 및 zsh에서는 모든 작업 사양을 인수로 전달할 수 있습니다 kill. 작업 사양은 a로 시작 %하고 뒤에 작업 번호 또는 작업 명령 이름의 일부가 올 수 있습니다.

$ jobs
[3] +  Running                 sleep 9999 &
[2] - Stopped                  vim foo
[1]    Running                 xterm &
$ kill %sleep
[3] + Terminated               sleep 9999 &
$ jobs
[2] + Stopped                  vim foo
[1] -  Running                 xterm &

관련 정보