답변1
ps
다음과 같은 구문을 사용할 때 이 명령은 이 경고를 생성합니다 ps -aux
. 이 경고를 억제하는 방법에 대한 설명은 이 QA를 참조하세요.Linux에서 ps -aux의 경고 억제
경고 메시지가 나타나는 이유는 간단합니다. ps
세 가지 유형의 옵션이 지원됩니다. -e
대시가 1개 있는 POSIX 스타일 옵션( ), 대시가 없는 BSD 스타일 옵션( ), a
대시가 2개 있는 --forest
GNU 스타일 옵션입니다 . 특히 다양한 유형의 옵션을 혼합하면 이 경고가 생성 -aux
됩니다 . aux
이것은프로젝트 FAQ:
"ps -aux"가 가짜 "-"에 대해 불평하는 이유는 무엇입니까?
POSIX 및 UNIX 표준에 따르면 위 명령을 사용하려면 TTY가 있는 모든 프로세스(일반적으로 사용자가 실행 중인 명령)가 표시되어야 하고 "x"라는 사용자가 소유한 모든 프로세스가 필요합니다. 사용자가 존재하지 않으면 ps는 실제로 "ps aux"를 의미한다고 가정합니다. 이 경고는 "x"라는 이름의 사용자가 생성될 경우 문제를 일으킬 수 있는 습관을 부드럽게 없애기 위해 발행됩니다.
로그인할 때 이 내용이 표시되므로 문제의 명령이 ps
로그인 프로필( bash
쉘의 ~/.bash_profile) 내에 있을 수 있습니다.
답변2
이 버그는 특히 Homebrew와 관련이 있습니다.이 줄. 대신 ps
이 c
플래그를 사용할 수 있습니다 -c
.
이 eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)
지시문은 PATH 변수의 올바른 형식을 내보내는 데 사용하는 SHELL을 평가합니다.
이 오류가 발생하면 brew
변수를 수동으로 정의합니다 ~/.bashrc
.
export HOMEBREW_PREFIX=${HOMEBREW_PREFIX};
export HOMEBREW_CELLAR=${HOMEBREW_CELLAR};
export HOMEBREW_REPOSITORY=${HOMEBREW_REPOSITORY}
export HOMEBREW_SHELLENV_PREFIX=${HOMEBREW_PREFIX}
export PATH=${HOMEBREW_PREFIX}/bin:${HOMEBREW_PREFIX}/sbin${PATH+:$PATH}
export MANPATH="${HOMEBREW_PREFIX}/share/man${MANPATH+:$MANPATH}:"
export INFOPATH="${HOMEBREW_PREFIX}/share/info:${INFOPATH:-}"