Cómo obtener un campo específico de una cadena

Cómo obtener un campo específico de una cadena

Quiero obtener la tercera columna de la última fila del resultado del freecomando. Hasta ahora tengo esto:

free | tail -n 1 | (here I need to printf the second column value)

¿Cómo hago eso?

Respuesta1

Usando solo awk:

free | awk 'ORS=""; END {print $2}'

Explicación:

ENDimprime solo la última línea

{print $2}imprime solo la segunda columna

ORS=""elimina la nueva línea final

o, de otra manera con awk:

free | awk  'END {printf "%s", $2}'

Respuesta2

La última línea de freesalida es Swap:...... Con ese conocimiento, puedes hacerlo con solo awk:

free | awk '/Swap:/ {print $3}'

Respuesta3

$ free | tail -n 1 | awk '{print $2}'

información relacionada