실행 중인 프로세스의 UID/GID를 검색하는 방법이 있습니까? 현재 내가 아는 유일한 방법은 htop입니다. 하지만 저는 타사 도구에 의존하고 싶지 않으며 내장된 Unix 명령을 사용하는 것을 선호합니다. 유용한 단일 라이너를 추천해 주실 수 있나요?
이것은 내 호기심을 만족시키지 못합니다.
실행 중인 프로세스의 GID를 프로그래밍 방식으로 검색하는 방법
상단에는 그룹이 아닌 사용자만 표시됩니다.
답변1
$ stat -c "%u %g" /proc/$pid/
1000 1000
또는
$ egrep "^(U|G)id" /proc/$pid/status
Uid: 1000 1000 1000 1000
Gid: 1000 1000 1000 1000
아니면 그냥 bash 내장 기능을 사용하세요:
$ while read -r line;do [ "${line:1:2}" = "id" ] && echo $line;done < /proc/17359/status
Pid: 17359
Uid: 1000 1000 1000 1000
Gid: 1000 1000 1000 1000
답변2
또는 *BSD 시스템을 가정합니다( ps
이식성이 없고 OpenBSD는 /proc
많은 버전에서 더 이상 사용되지 않으므로)
ps -o uid,gid -p ...