2009-08-20 8 views
2

J'ai un script bash qui demande à l'utilisateur de saisir plusieurs fois et traite les entrées en arrière-plan pendant le temps où la prochaine entrée est attendue. Je continue à recevoir cette erreur une fois de temps en temps.erreur de lecture: 0: ressource momentanément indisponible

read error: 0: Resource temporarily unavailable 

Je me doutais bien les processus d'arrière-plan dans mon script serait la cause de ce j'ai donc essayé de mettre un < dev/null à la fin des commandes qui fonctionnent en arrière-plan, mais qui aide à force beaucoup.

./somescript.sh >> log.txt & < /dev/null 

Toute aide serait grandement appréciée.

+1

Je soupçonne que vouliez utiliser '>/dev/null' –

+1

Non Sharjeel

Répondre

0

Une simple redirection d'erreur vers/dev/null a fait l'affaire pour moi.

some_function1 2> /dev/null & 
some_function2 2> /dev/null & 
+1

Pourriez-vous donner plus de détails, je suis confronté au même problème lors de l'exécution de plusieurs commandes dans un fichier bash et je ne peux pas lire. – CMCDragonkai

0

Il est difficile à diagnostiquer sans en savoir plus sur ce que fait votre programme, mais ...

Pour une raison quelconque une partie de mon cerveau me dit que cela vient du noyau et est lié à bifurquer , mais je ne peux pas épingler la raison pour laquelle je pense cela. Essayez d'exécuter votre script et regardez votre utilisation de la mémoire (processeur aussi, mais cela me semble être de la mémoire). Pour des statistiques plus détaillées [que top] exécutez watch -d cat /proc/meminfo et regardez ce qui se passe lorsque vous commencez à obtenir cette erreur.

Questions connexes