GNU/Linux >> Tutoriels Linux >  >> Linux

Port série virtuel pour Linux

Vous pouvez utiliser un pty ("pseudo-télétype", où un port série est un "vrai télétype") pour cela. D'une extrémité, ouvrez /dev/ptyp5 , puis attachez votre programme à /dev/ttyp5; ttyp5 agira comme un port série, mais enverra/recevra tout ce qu'il fait via /dev/ptyp5.

Si vous en avez vraiment besoin pour parler à un fichier appelé /dev/ttys2 , puis déplacez simplement votre ancien /dev/ttys2 à l'écart et créez un lien symbolique à partir de ptyp5 à ttys2 .

Bien sûr, vous pouvez utiliser un nombre autre que ptyp5 . Choisissez-en un avec un nombre élevé pour éviter les doublons, car tous vos terminaux de connexion utiliseront également ptys.

Wikipédia en dit plus sur ptys :http://en.wikipedia.org/wiki/Pseudo_terminal


Utilisez socat pour cela :

Par exemple :

socat PTY,link=/dev/ttyS10 PTY,link=/dev/ttyS11

Complétant la réponse de @slonik.

Vous pouvez tester socat pour créer un port série virtuel en procédant comme suit (testé sur Ubuntu 12.04) :

Ouvrez un terminal (appelons-le Terminal 0) et exécutez-le :

socat -d -d pty,raw,echo=0 pty,raw,echo=0

Le code ci-dessus renvoie :

2013/11/01 13:47:27 socat[2506] N PTY is /dev/pts/2
2013/11/01 13:47:27 socat[2506] N PTY is /dev/pts/3
2013/11/01 13:47:27 socat[2506] N starting data transfer loop with FDs [3,3] and [5,5]

Ouvrez un autre terminal et écrivez (Terminal 1) :

cat < /dev/pts/2

le nom du port de cette commande peut être modifié en fonction du pc. cela dépend de la sortie précédente.

2013/11/01 13:47:27 socat[2506] N PTY is /dev/pts/**2**
2013/11/01 13:47:27 socat[2506] N PTY is /dev/pts/**3**
2013/11/01 13:47:27 socat[2506] N starting data transfer loop with FDs 

vous devez utiliser le numéro disponible dans la zone en surbrillance.

Ouvrez un autre terminal et écrivez (Terminal 2) :

echo "Test" > /dev/pts/3

Revenons maintenant au Terminal 1 et vous verrez la chaîne "Test".


Linux
  1. Mes 10 meilleurs raccourcis de terminal pour Linux

  2. Linux – Port série Raspberrypi ?

  3. Cygwin vs machine virtuelle Linux pour le développement ?

  4. Lecture et écriture sur le port série en C sous Linux

  5. Éditeur de texte de style Windows, basé sur un terminal, pour Linux

Une introduction à l'émulateur de terminal DomTerm pour Linux

Comment vérifier les ports d'écoute sous Linux (ports utilisés)

15 Commandes d'écran Linux pour traiter les sessions de terminal

Terminal Velocity - Une application de prise de notes CLI pour Linux

Top 8 des émulateurs de terminaux pour Linux [en 2021]

Matériel de terminal texte (pour Linux)