А вот как это сделать без ps
:
awk '{
if ("awk" == $1)
print "PID:",$2,"EUID:",$12,"EGID:",$13,"Groups:",$14;
}' /proc/*/status
Заменить "awk"
в if
тестом, если это необходимо. Удалите тест if
и замените идентификатор конкретного процесса на *
, если вы хотите проверить конкретный процесс.
La expresión $?
se evalúa como el código de salida del comando anterior.
&&
es un separador de comandos que ejecutará el segundo comando si y solo si el primer comando devuelve un código de salida de cero.
[
o test
es una herramienta de shell para realizar varias pruebas comparativas.
Debo señalar que ==
es la prueba incorrecta para usar aquí, ya que es para comparación de cadenas ; -eq
es la prueba de igualdad para comparación numérica .
Entonces:[ $? -eq 1 ] && return 0
mirará el código de salida del comando inmediatamente anterior y lo comparará con 1
. Si hay una coincidencia, el comando return 0
se ejecutará (evitando así lo que supongo que son comandos posteriores en la función en la que se encuentra esta prueba ).
La distinción entre el uso de ==
y -eq
es que [ 01 -eq 1 ]
es verdadero mientras que [ 01 == 1 ]
es falso.