ps -f -U
이 명령이 무엇을 하는지 이해할 수 없습니다. 위 명령의 출력을 얻었지만 이해할 수 없습니다.
답변1
이 ps
옵션에는 -U
보려는 프로세스의 사용자 목록(또는 더 정확하게는 프로세스가 실행 중인 사용자 이름)이 포함되어야 합니다. 목적은 분명히 사용자 이름으로 필터링하는 것입니다.
이 같은:
$ ps -f -U syslog,avahi
UID PID PPID C STIME TTY TIME CMD
syslog 522 1 0 10月22 ? 00:00:00 /usr/sbin/rsyslogd -n
avahi 594 1 0 10月22 ? 00:00:00 avahi-daemon: running [eagle.local]
avahi 622 594 0 10月22 ? 00:00:00 avahi-daemon: chroot helper
ps
이 옵션은 FreeBSD와 coreutils 모두에 존재합니다.POSIX 표준, 그래서 나는 그것이 상당히 이식 가능한 옵션이라고 생각합니다.
-f
coreutils 매뉴얼에 따르면 다음 과 같습니다 ps
.
-f Do full-format listing. This option can be combined with many other UNIX-style options to add additional columns. It also causes the command arguments to be printed. When used with -L, the NLWP (number of threads)
and LWP (thread ID) columns will be added. See the c option, the format keyword args, and the format keyword comm.
하지만FreeBSD설명서에는 다음과 같이 명시되어 있습니다.
-f Show command-line and environment information about swapped out
processes. This option is honored only if the UID of the user is
0.
따라서 목표는 두 경우 모두 출력의 전체 형식을 얻는 것이지만 설명은 매우 다릅니다. 또한 FreeBSD 옵션에는 교체된 프로세스가 포함되어서는 안 됩니다. 이건 잃어버렸기 때문에 휴대성이 좋지 않아요OpenBSD 매뉴얼.