Je rencontre un problème et j'ai eu des difficultés à trouver une solution en ligne. Mon code rejoue un fichier journal et se connecte à un serveur externe en utilisant netcat lors de l'écriture du fichier.Problème de script Pipe to Shell
Voici un exemple rapide de mon code de travail, je vais expliquer le problème par la suite.
# function that watches input for '$servertag' variable
serverwatch() {
while read data
do
if [ `strindex "$data" "$servertag"` -ge 0 ]; then
....
nc <server_ip> 1234
....
fi
done
}
# Tail the log file and pipe to functions
tail -f messages | serverwatch
Le problème est que si la connexion est établie avec succès, les données des fichier 'messages est en cours d'passepoilées jusqu'à netcat. Je fais une analyse basique sur les données localement, mais je ne sais pas comment empêcher les données d'être envoyées via netcat.
Je devrais rapidement noter que je cherche à avoir ce travail sur la plupart des builds DD-WRT, donc j'essaye de ne pas installer de nouveaux paquets. Aussi, bash semble être cassé/minimal sur la construction que j'ai, donc j'essaie d'éviter bash.
Veuillez me faire savoir si vous avez des questions, des solutions ou des références à d'autres questions qui vous aideront à résoudre ce problème.
Merci,
James
Cela a du sens, merci pour l'aide. Il semble que le paquetage netcat manque le drapeau 'd' sur cette installation. Il lance 'nc: option invalide --d' – James