答え1
ps
次の構文を使用すると、このコマンドはこの警告を生成しますps -aux
。この警告を抑制する方法については、このQAを参照してください。Linuxでps -auxの警告を抑制する
警告メッセージが表示される理由は簡単です。ps
3 種類のオプションがサポートされます。-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:-}"