Reading from device files
是否有特定的方法可以在 CL 中读取设备文件?我在 SBCL 中尝试了以下代码,但它似乎不起作用:
1 2 3 4 5 6 | (defparameter modem #p"/dev/ttyUSB2") (defun read-modem() (with-open-file (fd modem :direction :io :if-exists :append) (loop while (peek-char nil fd) do (format t"~A" (read-line fd)) (finish-output fd)))) |
我知道有输出,因为
我认为您的问题在于缓冲。
我不认为你可以在 CL
我猜,你需要像从二进制文件一样读取它们。例如,这是我从
中读到的内容
1 2 3 4 | > (with-open-file (fd"/dev/urandom" :direction :io :if-exists :append :element-type 'unsigned-byte) (read-byte fd)) 161 |