sous Linux, je dois envoyer une séquence de commandes à un port série par ex. mais cela n'évalue pas la réponse de l'appareil sur ce port. p> Y a-t-il un très em> de manière simple à automatiser fort> dans un script Bash, probablement à l'aide de / dev / ttys0 code>, qui doit attendre une réponse code> OK code> avant que la commande suivante soit envoyée. Je pouvais imaginer faire quelque chose comme
Socat code> et / ou
microcom code> mais aucun outil non trouvé sur le système Linux le plus simple fort>. p> p> p>
5 Réponses :
Vous avez une erreur: signifie affichage au fichier em> qui n'existe pas, je suppose. P> Au lieu de cela, essayez de faire: p> qui utilise coquille ici-doc em> p> p>
UPS, je voulais dire écho bien sûr. De plus, votre réponse ne répond pas à mon problème. Comment puis-je automatiser afin que toutes les commandes sont envoyées automatiquement.
Si vous installez le package PPP, vous pouvez utiliser le programme Quelques extraits: p> chat code> fourni avec elle. Ou vous pouvez utiliser
kermit code>. Ou le programme
Cu code> fourni avec UUCP. Mais pour le faire avec une coquille pure est plus délicate. Vous pourrez peut-être utiliser les fonctions Lecture et Printf, avec Stdio redirigé vers le port.
stty -F /dev/ttyS0 38400 raw
chat -f script.txt < /dev/ttyS0 > /dev/ttyS0
Ok, ça a du sens. Mais j'ai essayé de faire sudo bash -c "chat -v -f chat.txt dev / ttys0> / dev / ttys0" code> avec l'action verbeuse et le fichier constitué de
'' Sur OK à OK code>, mais n'a aucune sortie du tout. Est-ce que ça marche ou non? Est-ce que j'ai supervué quelque chose?
Vous ne verrez rien normalement, mais il vous apparaît, vous pouvez utiliser les options -Sv code> pour le voir connectées à starr. Le
-v code> en elle-même se connecte à Syslog. BTW, vous pouvez également utiliser l'outil
attendre code>.
Je fais la même chose, mais sur mobile Android. cette réponse peut-elle m'aider? Si oui, quel est le paquet PPP et qui puis-je l'installer?
Voici un très em> un moyen simple de automatiser strud> dans un script Bash: en utilisant le ATINOUT programme écrit spécifiquement avec cette fonctionnalité comme objectif unique. La sortie ci-dessus assume dans l'exemple ci-dessus , ATINOUT enverra la première commande Vous pouvez donner une entrée à partir d'un fichier en spécifiant qu'au lieu du premier ate1 code>; Sans écho, la réponse du modem sera
"\ r \ n \ r \ nok \ r \ n \ r \ nok \ r \ n" code>. p>
à code> (terminer correctement la ligne de commande avec
\ r code>), attendez jusqu'à ce qu'il reçoive un code de résultat final (par exemple,
OK CODE >) Et continuez d'abord, continuez à traiter la commande suivante. p>
- code>, et si vous souhaitez capturer le donneur de sortie. un nom de fichier au lieu du dernier
- code>. Vous pouvez utiliser ici DOC au lieu de commandes d'écho groupées si vous le souhaitez. P> P>
Pour afficher les messages de: ou toute autre commande de modem type qui code> pour trouver le numéro de terminal puis exécutez: p>
cat /dev/ttyACM0 >& /dev/pts/8 &
Vous pouvez utiliser / dev / tty code> pour votre TTY actuel et évitez le détour de vérifier le bon de
qui code>.
À quel point? La plupart des outils peuvent avoir n'importe quel nombre d'outils installés très facilement.
Je ne peux vraiment pas dire avec certitude. Nommez-moi un outil et je peux vous dire si je suis capable d'utiliser cela.