Empecé a descargar un archivo grande en segundo plano usando
$ nohup wget http://example.tld/big.iso &
que también me da un nohup.out
archivo que incluye la salida de wget
.
Ahora, si luego quiero ver el proceso de descarga, podría usarlo, $ tail -f nohup.out
pero eso llena la ventana de mi terminal más rápido de lo que desearía. Lo que me gustaría ver es la última línea que se actualiza constantemente (al igual que cuando se usa wget
solo).
Lo intenté $ tail -n 1 -f nohup.out
pero parece afectar solo la cola inicial.
En términos generales, si es posible limitar (en este caso a 1) el número de líneas que la salida de un comando tiene disponible / visible, resolvería este problema. Es como tener la salida en un búfer circular : solo piense en la barra de progreso normal que $ wget example.tld/big.iso
se imprimiría.
¿Existe tal solución?
¿O estoy subiendo al árbol de manera incorrecta? (Es decir, ¿sería más fácil limitar nohup
la salida o hacer otra cosa?)
tail
proceso cada segundo, que podría o no ser algo que le interese. Además, asegúrese de especificar un intervalo de sub-segundo (por ejemplowatch -n 0.1
) para simular la parte de "actualización constante". (Obviamente, esto también aumenta la cantidad de procesos y llamadas abiertas de archivo). Finalmente, si está utilizando OS X, puede obtenerlowatch
de MacPorts, ya que no está disponible de forma predeterminada.watch
en una nueva ventana de terminal. También descubrí que usartail -n 2
es más útil que-n 1
conwget
, al menos con unwatch
intervalo de 1 segundo, porque de lo contrario el último porcentaje podría no verse; Esto no es un defecto en su respuesta, pero lo mencioné si alguien más decide ver la salida de cola de wgets.tail
proceso probablemente no sea demasiado exagerado; pero como respuesta general, es bueno tenerlo en cuenta. También noté quewatch -n 0.1
no funcionó, perowatch -n 0,1
funcionó: podría haber configuraciones regionales aplicadas, aunque no he visto configuraciones regionales aplicadas a las opciones de comando de terminal antes. Como nota al margen: tambiénbrew install watch
funcionó muy bien :-)watch
funcionará con su configuración regional0,1
o0.1
depende de ella (utiliza el símbolo decimal definido para su configuración regional). CompruebeLC_ALL=C watch -n 0.1 "date +%S.%N"
.Hay ciertas secuencias de control de Xterm que puede usar para limitar las líneas de su terminal que se desplazan. Busque "Establecer región de desplazamiento". Sin embargo, es un poco un error. Asegúrese de reiniciar su terminal después:
fuente
tail -f
todavía llena el búfer y también porque el terminal necesita reiniciarse después de todos modos. Esto no está tan en línea como esperaba, pero de lo contrario podría ser lo que buscaba.Si no desea que la salida ocupe toda la ventana de terminal actual, puede usar un
while
bucle simple :fuente
scrollTtyOutput
(o una opción similar).