Pregunta

Tengo una secuencia de comandos que falla constantemente (el problema que no puedo resolver como segfault está en los enlaces de python libxml) no los escribió. Ok, en Linux solía ejecutar un inf.loop para que cuando el script muera, se reinicie, así:

#!/bin/bash
while [ 1 ]
do
nice -n 19 python server.py
sleep 1
done

Bueno, parece que no puedo encontrar / bin / bash en FreeBSD, así que eso no funciona.

¿Alguna idea? Tenga en cuenta que cron no es una opción: el tiempo de inactividad permitido es de unos segundos.

¿Fue útil?

Solución

/ bin / sh casi ciertamente existe, pero si realmente necesita bash:

cd /usr/ports/*/bash
make install

que debería instalar bash en / usr / local / bin / bash, creo

Otros consejos

Habrá algún programa de shell en el sistema, y ??parece que ese script se ejecutará en casi cualquier shell.

Escriba type bash para ver dónde está bash. Si no, prueba sh. Debería estar allí, y debería funcionar. Tome el resultado de type bash o type sh y utilícelo en lugar de / bin / bash. Alternativamente, mire / etc / passwd, busque su cuenta y observe cuál es el shell. Creo que es el último campo, y dirá algo como / bin / sh o / usr / bin / bash o lo que sea. Úselo en lugar de / bin / bash.

No estoy seguro de qué shell utiliza FreeBSD por defecto, pero probablemente viene con algunos. La página de manual para cualquier shell que esté utilizando debería decirle la sintaxis de bucle de ese shell. Probablemente sea bastante similar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top