Recibí consejos para verificar si una aplicación de iTunes envía datos a la nube usando esta línea de comandos
lsof -i | grep -E "(LISTEN|ESTABLISHED)"
¿Alguien puede explicar cómo funciona esto? ¿Cómo funciona la tubería aquí?
Recibí consejos para verificar si una aplicación de iTunes envía datos a la nube usando esta línea de comandos
lsof -i | grep -E "(LISTEN|ESTABLISHED)"
¿Alguien puede explicar cómo funciona esto? ¿Cómo funciona la tubería aquí?
Se ejecuta el primer lsof
:
lsof - list open files
con la opción -i:
-i [i] selecciona la lista de archivos de cualquier dirección de Internet coincide con la dirección especificada en i. Si no hay una dirección específica Fied, esta opción selecciona la lista de todo Internet y x.25 (HP-UX) archivos de red.
Para obtener una lista similar a esta:
Safari 252 pfitz 33u IPv4 0x1052718d4b4f54ef 0t0 TCP localhost:49289->localhost:6263 (ESTABLISHED)
Safari 252 pfitz 36u IPv4 0x1052718d4b4f54ef 0t0 TCP localhost:49289->localhost:6263 (ESTABLISHED)
iTunes 254 pfitz 28u IPv4 0x1052718d460f9d07 0t0 TCP *:49196 (LISTEN)
iTunes 254 pfitz 30u IPv4 0x1052718d460fb4ef 0t0 TCP *:daap (LISTEN)
iTunes 254 pfitz 31u IPv6 0x1052718d37b6b627 0t0 TCP *:daap (LISTEN)
con muchas más entradas. Para filtrar las entradas se usa grep
:
La utilidad grep busca cualquier archivo de entrada dado, seleccionando líneas que emparejar uno o más patrones Por defecto, un patrón coincide con una entrada. línea si la expresión regular (RE) en el patrón coincide con la línea de entrada sin su nueva línea final. Una expresión vacía coincide con cada línea. Cada la línea de entrada que coincide con al menos uno de los patrones se escribe en la salida estándar.
grep se utiliza para patrones simples y expresiones regulares básicas (BRE); egrep puede manejar expresiones regulares extendidas (ERE). Ver re_format (7) para Más información sobre expresiones regulares. fgrep es más rápido que grep y egrep, pero solo puede manejar patrones fijos (es decir, lo hace no interpretar expresiones regulares). Los patrones pueden constar de una o más líneas, lo que permite que cualquiera de las líneas del patrón coincida con una parte de la entrada.
y la opción -E hace lo siguiente:
-E, --extended-regexp
Interpreta el patrón como una expresión regular extendida (es decir, obliga a grep a comportarse como egrep).
La expresión regular en este caso es "(LISTEN|ESTABLISHED)"
, lo que significa simplemente imprimir las líneas con escucha o establecida.