Casi todos los Linux utilizan versiones de GNU de los comandos centrales originales de Unix como ps
, que, como ha notado, admite las opciones de estilo BSD y AT&T.
Dado que su objetivo declarado es solo la compatibilidad entre Linux, eso significa que la respuesta es: "No importa".
Las variantes embebidas y otras muy pequeñas de Linux suelen usar BusyBox en lugar de las herramientas GNU, pero en el caso de ps
que realmente no afecte la respuesta, ya que la versión de BusyBox está tan reducida que no se puede llamar AT & Tish ni BSDish.
Con el tiempo, otros sistemas Unixy han reducido las ps
diferencias de compatibilidad. Mac OS X, que se deriva indirectamente de BSD Unix y, en general, se comporta de manera más similar a BSD Unix, acepta tanto las marcas AT & Tish como BSDish ps
.
Solaris / OpenIndiana también se comporta de esta manera, aunque esto es menos sorprendente porque tiene un historial mixto de BSD y AT&T.
FreeBSD, OpenBSD y NetBSD aún siguen el estilo BSD exclusivamente.
Cuanto más antigua sea una caja Unix, más probable es que acepte solo un estilo de banderas. Puede empapelar las diferencias en este cuadro de la misma manera que lo hacemos ahora: instale las herramientas GNU, si aún no se han instalado.
Dicho esto, todavía hay trampas. ps
la salida generalmente no debe analizarse en scripts que necesitan ser portátiles, por ejemplo, dado que los sistemas Unixy varían en las columnas disponibles, la cantidad de datos que el sistema operativo está dispuesto a hacer visibles para los usuarios no root, etc.
(Por cierto, tenga en cuenta que es "BSD vs. AT&T", no "BSD vs. Unix". BSD Unix sigue siendo UNIX®. BSD Unix comparte un historial de desarrollo directo con la sucursal original de AT&T. Ese intercambio también es en ambos sentidos. : AT&T y sus sucesores trajeron a casa las innovaciones de BSD en varios puntos de su historia. Esta unificación a lo largo del tiempo se debe en parte a los esfuerzos de The Open Group y sus predecesores).