2010-02-10 17 views
1

J'ai périphérique connecté via le port série pour PC. En utilisant c-kermit, je peux envoyer des commandes au périphérique et lire la sortie. Je peux aussi envoyer des fichiers en utilisant le protocole kermit.Comment envoyer le fichier au port série en utilisant le protocole Kermit en python

En python nous avons bibliothèque assez agréable - pyserial. Je peux l'utiliser pour envoyer/recevoir des données à partir de l'appareil. Mais existe-t-il une bonne solution pour envoyer des fichiers en utilisant le protocole kermit?

Répondre

1

Vous devriez être en mesure de le faire via le module de sous-processus. Ce qui suit suppose que vous pouvez envoyer des commandes à votre machine distante et analyser les résultats déjà. :-)

Je n'ai rien à tester cela sur le moment, donc je vais être assez général. Approximativement: 1.) utiliser pyserial pour se connecter au système distant via le port série. 2.) exécuter le client Kermit sur le système distant à l'aide des commutateurs qui envoient le ou les fichiers que vous souhaitez transférer sur les systèmes distants port série (la ligne de série que vous utilisez.) 3.) déconnecter votre instance pyserial 4 .) démarrez votre client kermit avec un sous-processus et acceptez les fichiers. 5.) reconnectez votre instance pyserial et nettoyez tout. Je suis prêt à parier que ce n'est pas beaucoup d'aide, mais quand je l'ai fait il y a quelques années (en utilisant os.system, plutôt que sous-processus sur un système hideux et hideux SuperDOS) il m'a fallu un certain temps pour Je me suis fait dire que je devais démarrer un client kermit à distance pour envoyer le fichier à mon client!

Si j'ai un peu de temps cette semaine, je vais briser un de mes anciens conseils géode et voir si je peux envoyer un code de travail réel.

+0

J'ai utilisé c-kermit via un sous-processus. :) – Adam