A sintaxe correta, que retorna a mesma saída , seria:
ps u
Existe uma boa razão pela qual a sintaxe moderna para ps é uma bagunça. Historicamente, havia duas versões incompatíveis de ps . As opções com um traço principal foram herdadas da versão AT & T Unix de ps . Opções sem um traço principal foram herdadas do BSD. A versão de ps que as distribuições Linux geralmente usam é o GNU, que uniu os dois conjuntos de opções, além de adicionar seu próprio conjunto de opções que começam com um traço duplo principal.
Assim, ps u é do tipo BSD e ps -u $USER é AT & T-style. O fato de que o GNU ps permite executar ps -u e, além do aviso, obter a mesma saída que ps u mostra que o GNU está tentando tirar o melhor de uma situação ruim.