¿Cómo obtengo el comando "top" para ajustar su salida?


20

La columna "comando" se trunca por el ancho de la pantalla y no puedo ver la última parte.

He tratado de reducir el tamaño de la fuente para poder ver una parte más larga de la línea de comando, pero todavía no funciona.


¿Qué comando genera tu salida?

Sé que esto no responde directamente a su pregunta, pero buscaría htopuna interfaz mucho mejor top. Te permitirá desplazarte con las teclas de flecha.

¿Puedes aclarar por qué no funcionó la reducción del tamaño de fuente?
Stephen Quan

funciona, pero no lo suficiente como para ver toda la línea ... la línea de comando es bastante larga
sureshvv

Respuestas:


10

top -bcn1 -w512

La solución elegante es usar la opción . Según la página del manual, el ancho máximo es de 512 caracteres, por lo que necesitará una solución diferente para cualquier cosa que exceda eso. Presumiblemente, también desea ver la longitud total de los comandos, así que use la opción. Necesitamos ejecutar en "modo por lotes", o continuará cortando los comandos con un "+". El modo de procesamiento por lotes hace un desastre porque imprime todos los trabajos cada segundo, por lo que podemos usar la opción para imprimir solo una instancia.-w [number]-ctop-b-n1

Consulte la página principal de man para obtener más información.


1
Debe verificar la página del manual en su sistema; Estas opciones no existen en todas las versiones de top.
Scott

en mi ubuntu 18.04 man topdice -c :Command-line/Program-name toggle ... Starts top with the last remembered 'c' state reversed. lo que significa -cque solo mostraría comandos completos cada 2da ejecución.
gilad mayani hace

21

El campo de comando se trunca por defecto automáticamente para una mejor lectura.

Necesitas correr

top -c

para mostrar el comando completo y luego, dependiendo de las capacidades de la ventana de su consola, podrá desplazarse hacia la derecha y ver el comando completo.


Eso solo muestra la línea de comando completa de forma predeterminada, o lo que sea que se pueda hacer visible en una línea. No veo ninguna habilidad de desplazamiento. ¿Estás diciendo que solo tengo que configurar mi ventana a un ancho mayor?

Sí, eso para empezar. ¿Qué tipo de ventana estás usando? ¿Es un terminal de comando Putty, Dos, terminal Gnome? cualquiera de estos le permitirá desplazarse horizontalmente.
portador del anillo

no
veo

8

Como dijo Daniel Arndt, también puedes usar htop en lugar de top. Actualmente está disponible en todas las distribuciones y proporciona mejores números (especialmente para el uso de memoria)

También es mucho más fácil de usar y más agradable de ver, incluso si se limita a los colores del terminal. Puede desplazarse hacia la derecha para ver el comando completo, por ejemplo, o puede matar un proceso con un F9 simple. También puede ver el árbol completo con la tecla 't'.


Esto no responde la pregunta, pero es una sugerencia para un programa diferente. htopes un buen programa, pero la pregunta era sobre la salida de top. Por favor permanezca en el tema.
drumfire

2
@drumfire que ofrece alternativas es perfectamente válido y sobre el tema. Esto debería ser obvio por el hecho de que el OP aceptó esta respuesta hace casi tres años.
terdon

3

Esto es hacky, pero puede modificar el comportamiento ajustando las variables de shell $ COLUMNS y $ LINES antes de iniciar top:

export COLUMNS=$((COLUMNS*2))
export LINES=$((LINES/2))
top

Esto convencerá al shell de que tiene el doble de columnas para escribir (y la mitad de las filas para compensar esto). Si está utilizando bash, puede ejecutar de shopt -s checkwinsizeantemano, lo que le indicará que vuelva a calcular esos valores una vez que salga la parte superior. De lo contrario, puede hacer una copia de seguridad / restaurar esos valores (o simplemente cambiar el tamaño de la ventana).


0

Puede diseñar una pantalla por lotes que incluya top -b -n 1 y ps , por ejemplo:

while (true)
do
  clear
  top -b -n 1
  ps
  sleep 5
done

Esto se encargará de mostrar:

  • PID
  • UPC
  • Línea de comando no truncada

0

Es posible que desee probar esto. Esto imprimirá la única instancia de topancho fijo y salidas para que pueda obtener la salida.

top -n1 -w80

Incluso puede canalizar la salida a un archivo.

top -n1 -w80 > top_output.txt

0

Intentando aumentar el ancho de salida de sreen usando el siguiente comando.

export COLUMNS = 197 top -u -cbn1> top.output

Aquí 197 es solo una varaible. Intente aumentar según sus requisitos y la producción detallada que necesita.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.