Es gibt mindestens zwei Dinge, die dies sein könnte. Am wahrscheinlichsten ist, dass auf Fedora ein ps
Alias auf ps -A
(oder ps a
das a ohne das - Ergebnis in einem ähnlichen Verhalten wie -A) erfolgt; was würde das Ausgabeformat erklären. Auf jedem Systemtyp, der angibt which ps
, welche Aliase anstelle der ausführbaren Datei direkt aufgerufen werden.
Sie können beliebige Aliasnamen umgehen, indem Sie entweder den vollständigen Pfad des Programms aufrufen (z. B. /bin/ps
den Befehl mit einem führenden '\' starten, z \ps
.
Die weitaus unwahrscheinlichere Sache ist, dass die beiden Distributionen ps mit unterschiedlichen Flags erstellt haben (was zu unterschiedlichem Verhalten führt). Ich habe gerade ps auf Fedora 23 geprüft, und die Standardausgabe entspricht der von ubunutu, was Sie bekommen. Ich denke, Sie haben einen Alias gesetzt.
Der Alias wird höchstwahrscheinlich in der Datei ~ / .bashrc festgelegt. andere Standorte sind möglich. Sie können die Aliase in Ihrer aktuellen Umgebung anzeigen, indem Sie alias
im Terminal keine Argumente eingeben .
Aktualisieren:
Da sie kein Alias sind, ändert etwas (um das Offensichtliche zu sagen) das Verhalten. Hier sind einige Dinge, die Sie beachten sollten, um herauszufinden, was das ist: Führen Sie sie auf jedem System in einer 'sauberen' Umgebung aus:
env -i ps
und sehen, ob sich das Verhalten ändert. Wenn dies der Fall ist, wissen wir, dass es eine Umgebung ist, die die Umgebung verändert.
Geben Sie auf jedem System den folgenden Befehl ein: ps --info
Prüfen Sie, ob das Feldfeld personality=0x
nicht Null ist und die Ausgabe ändern kann. Beachten Sie alle anderen Unterschiede zu dieser Ausgabe. Poste sie, wenn du die Bedeutung des Unterschieds nicht entschlüsseln kannst.
Um zu sehen, ob etwas neu bestimmt wird ps
, führen Sie auf jeder Shell die folgende aus:
set -x ps -a
Sie sollten etwas sehen wie:
+ps -a
hallte heraus; Wenn Sie etwas anderes sehen, z. B. +ps aux
würde dies dies verursachen. Dies wird normalerweise durch einen Alias getan, könnte aber eine Funktion sein. Sie können den Bash-Spam durch Ausführen deaktivierenset +x
Überprüfen Sie auf jedem Rechner, ob die Binärdatei ein Symlink zu etwas anderem ist und ob dort etwas Seltsames passiert (wahrscheinlich auf Fedora, dass / usr / bin / ps ein Symlink zu / bin / ps ist)
ls -alt /bin/ps ls -alt /usr/bin/ps
Versuchen
type ps
Auf jeder Maschine; Die Ergebnisse sollten gleich sein, wenn sie nicht mit den Ergebnissen antworten.
Es gibt einige Umgebungsvariablen, die das Verhalten von ps verändern können. um diese Art zu sehen man ps
; Sie sind am Boden. Geben Sie env
in jedes Betriebssystem ein und prüfen Sie, ob welche gesetzt sind. Sie können für sie grep:
env | grep 'CMD_ENV\|PS_PERSONALITY\|_XPG'
Da sind andere; Sehen Sie sich die Manpage an, um sie der Abfrage hinzuzufügen, wenn diese nichts zurückgeben oder um herauszufinden, was die Einstellung bedeutet ps
.
Hier geht es ins Unkraut, aber wenn Sie immer noch nichts haben, überprüfen Sie die Binärdatei-Kopfzeilen auf jedem:
readelf -h /bin/ps
Wenn sich keine Unterschiede ergeben, können Sie die Datei / bin / ps in das andere Betriebssystem kopieren und einen Vergleich durchführen:
cmp -b /bin/ps /path/to/copy/of/ps
Dadurch werden alle Bytes ausgegeben, die sich zwischen den beiden Dateien unterscheiden. Die tatsächlichen Werte spielen keine Rolle. nur die Anzahl der Unterschiede.
Sie werden anders sein; Wenn es nur ein paar Bytes Unterschied ist, dann wäre dies nur das gcc-Feld NT_GNU_BUILD_ID, das für jeden Build eindeutig ist, selbst ansonsten identische Dateien. Wenn sie sich nicht wesentlich von dem Verhalten der Umwelt unterscheiden, kann ich nicht mehr nachprüfen.