Anda dapat menggunakan pty ("pseudo-teletype", di mana port serial adalah "teletype asli") untuk ini. Dari satu ujung, buka /dev/ptyp5
, lalu lampirkan program Anda ke /dev/ttyp5
; ttyp5
akan bertindak seperti port serial, tetapi akan mengirim/menerima semua yang dilakukannya melalui /dev/ptyp5.
Jika Anda benar-benar membutuhkannya, hubungi file bernama /dev/ttys2
, lalu cukup pindahkan /dev/ttys2
lama Anda keluar dari jalan dan buat symlink dari ptyp5
ke ttys2
.
Tentu saja Anda dapat menggunakan nomor selain ptyp5
. Mungkin pilih satu dengan nomor tinggi untuk menghindari duplikat, karena semua terminal login Anda juga akan menggunakan ptys.
Wikipedia memiliki lebih banyak tentang ptys:http://en.wikipedia.org/wiki/Pseudo_terminal
Gunakan socat untuk ini:
Misalnya:
socat PTY,link=/dev/ttyS10 PTY,link=/dev/ttyS11
Melengkapi jawaban @slonik.
Anda dapat menguji socat untuk membuat Virtual Serial Port dengan melakukan prosedur berikut (diuji pada Ubuntu 12.04):
Buka terminal (sebut saja Terminal 0) dan jalankan:
socat -d -d pty,raw,echo=0 pty,raw,echo=0
Kode di atas mengembalikan:
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]
Buka terminal lain dan tulis (Terminal 1):
cat < /dev/pts/2
nama port perintah ini dapat diubah sesuai dengan pc. itu tergantung pada keluaran sebelumnya.
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
Anda harus menggunakan nomor yang tersedia di area yang disorot.
Buka terminal lain dan tulis (Terminal 2):
echo "Test" > /dev/pts/3
Sekarang kembali ke Terminal 1 dan Anda akan melihat string "Test".