GNU/Linux >> Tutoriales Linux >  >> Linux

Puerto serie virtual para Linux

Puede usar un pty ("pseudo-teletipo", donde un puerto serie es un "teletipo real") para esto. Desde un extremo, abre /dev/ptyp5 y luego adjunte su programa a /dev/ttyp5; ttyp5 actuará como un puerto serie, pero enviará/recibirá todo lo que haga a través de /dev/ptyp5.

Si realmente lo necesita para hablar con un archivo llamado /dev/ttys2 , simplemente mueva su antiguo /dev/ttys2 fuera del camino y haga un enlace simbólico desde ptyp5 a ttys2 .

Por supuesto, puedes usar algún número que no sea ptyp5 . Tal vez elija uno con un número alto para evitar duplicados, ya que todos sus terminales de inicio de sesión también usarán ptys.

Wikipedia tiene más información sobre ptys:http://en.wikipedia.org/wiki/Pseudo_terminal


Usa socat para esto:

Por ejemplo:

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

Complementando la respuesta de @slonik.

Puede probar socat para crear un puerto serie virtual realizando el siguiente procedimiento (probado en Ubuntu 12.04):

Abra una terminal (llamémosla Terminal 0) y ejecútela:

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

El código anterior devuelve:

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]

Abre otra terminal y escribe (Terminal 1):

cat < /dev/pts/2

El nombre del puerto de este comando se puede cambiar de acuerdo con la PC. depende de la salida anterior.

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 

debe usar el número disponible en el área resaltada.

Abre otra terminal y escribe (Terminal 2):

echo "Test" > /dev/pts/3

Ahora regrese a la Terminal 1 y verá la cadena "Prueba".


Linux
  1. Los 3 mejores emuladores de terminal acelerados por GPU para Linux

  2. Linux – ¿Puerto serie Raspberrypi?

  3. Hyper:la mejor aplicación de terminal para Linux

  4. ¿Cygwin vs máquina virtual Linux para desarrollo?

  5. Lectura y escritura en puerto serie en C en Linux

Una introducción al emulador de terminal DomTerm para Linux

Cómo comprobar los puertos de escucha en Linux (Puertos en uso)

15 comandos de pantalla de Linux para gestionar sesiones de terminal

Terminal Velocity:una aplicación CLI para tomar notas para Linux

Los 8 mejores emuladores de terminal para Linux [en 2021]

Hardware de terminal de texto (para Linux)