Cuando corro:
watch 'cmd >> output.txt' &
el sistema suspende el trabajo:
3569 Detenido (salida tty)
¿Hay alguna solución?
shell
command-line
tty
watch
background-process
Juliusz
fuente
fuente
Aquí hay una manera:
Dado que realiza el proceso en segundo plano, podemos suponer que no necesita la pantalla del terminal y que está bien redireccionando a un archivo. Si lo haces, podrás crear un fondo
watch
sin problemas.sleep
, como lo sugiere Michael Mrozek, se retrasará lentamente, lo que puede ser indeseable. Además de un script de shell complicado que monitorea la hora del sistema y ejecuta un comando basado en el tiempo transcurrido,watch -p
puede ser una buena opción para tiempos precisos.Para tiempos precisos:
fuente
&
dos veces?man bash
para ver cómo funciona el primero&
. ;)No estoy seguro de tus motivaciones, pero ¿tal vez esto sea suficiente?
De lo contrario, explique por qué realmente lo necesita
watch
.fuente
tee
es tu amigo. Por ejemplo, así es como puede mostrar la cantidad de archivos en el directorio actual y agregarlo a count.txt cada 2 segundos:fuente
Depende de tus motivaciones:
Desea ejecutar algo periódicamente. Entonces podrías usar directamente cron. (Si una granularidad de tiempo de 1 minuto es suficiente para sus propósitos).
Solo quieres ejecutar algo repetidamente:
(Puede ejecutar esto desde el crontab, por ejemplo, aunque se recomienda usar un script).
Desea ejecutar periódicamente un comando y tener acceso a la salida de su última ejecución.
Puede escribir la salida en un ramfs (modificando el script antes):
o mejor:
Puede combinar
screen
ywatch
, para que siempre pueda verificar el estado más reciente, siempre que quepa en una pantalla:fuente
Puedes usar el comando de pantalla.
http://www.cyberciti.biz/tips/linux-screen-command-howto.html
fuente
Si debe usarlo
watch
: solo combine las respuestas de mike dangelo y l0b0p.ej
luego mira pasar los segundos
fuente
Watch está diseñado para salir a la pantalla, pero su salida se puede redirigir (tanto stdout como stderr) y luego se ejecutará en segundo plano.
fuente