Linux/Unix Shell Scripting - Ayuda! ordenar por columnas

   
Vista:

Ayuda! ordenar por columnas

Publicado por jr. (7 intervenciones) el 23/05/2015 21:52:34
Que tal gente, el problema que tengo es el siguiente:
Quisiera que la salida del script sea en tres columnas como estas.

1
2
3
4
5
6
usuario   comando        rss
root        gnome-shell     98
root        calen                 105
root        nautilus             40
root        gedit                  35
root        alarm                 90

El script que he realizado es el siguiente:

1
2
3
4
5
6
7
8
#!/bin/bash
x= `ps h c -e -o user,command --sort -rss |head -5`
y=`ps h c -e -o --sort -rss |head -5 |awk '{print $0/1024}' |awk '{printf("%.0f\n",$0)}'`
 
echo $x > /tmp/x
echo $y > /tmp/y
 
paste /tmp/x /tmp/y

Lo que obtengo es lo siguiente:

root gnome-shell root calen root nautilus root gedit root alarm 98 105 40 35 90

Alguna idea como formar esas columnas???
Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Ayuda! ordenar por columnas

Publicado por Tom (253 intervenciones) el 25/05/2015 14:51:21
1
2
3
4
ps -o user,rss,command | while read A B C
do
  echo $A $C $B
done
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de xve

Ayuda! ordenar por columnas

Publicado por xve (254 intervenciones) el 25/05/2015 15:14:27
Excelente Tom!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda! ordenar por columnas

Publicado por Tom (253 intervenciones) el 26/05/2015 09:27:10
Por cierto
1
2
F=$((B * 1000 / 1024))
  echo "${F:0:-3}.${F:(-3)}"
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar