Quelle est la différence entre ps -aux
et ps aux
? Je me demande si c'est plus qu'une simple question de syntaxe et de "portabilité". Lequel est-il préférable d'utiliser dans Ubuntu?
Malgré des questions similaires, cette différence spécifique m'intéresse.
BSD et AT & T ont développé des versions incompatibles de ps
. Les options sans tiret principal sont le style BSD tandis que celles avec un tiret principal sont de style Unix AT & T.
Le ps man page a également ceci à dire:
Notez que "ps -aux" est distinct de "ps aux". Les normes POSIX et UNIX exigent que "ps -aux" imprime tous les processus appartenant à un utilisateur nommé "x", ainsi que tous les processus sélectionnés par l'option -a. Si l'utilisateur nommé "x" n'existe pas, ce "ps" peut interpréter la commande comme "ps aux" et afficher un avertissement. Ce comportement est destiné à faciliter la transition d'anciens scripts et habitudes. Il est fragile, sujet au changement et ne doit donc pas être invoqué.
Linux a choisi de supporter les deux. ps -au{user}
affichera une erreur si vous fournissez un utilisateur non existant. Voir:
$ ps -autest
error: user name does not exist
Usage:
ps [options]
Try 'ps --help <simple|list|output|threads|misc|all>'
or 'ps --help <s|l|o|t|m|a>'
for additional help text.
For more details see ps(1).
Ubuntu/Canonical a choisi d'afficher une erreur. Debian a choisi de donner le même résultat à ps -aux
et ps aux
. Dans l'ensemble, assez déroutant. Mais comme indiqué: ceci est/était de rendre les scripts compatibles. Et vous pouvez utiliser ce dont vous vous sentez heureux.