linux - tty 核心流字符

标签 linux linux-kernel device-driver linux-device-driver

我在没有屏幕的硬件上运行 linux,并将所有数据转储到串口。我正在通过 hyperterm 或 teraterm 等应用程序阅读 linux 序列。我得到了正确格式化的串行输出。但是,如果我将该输出转储到一个文件然后尝试读取它,那么我会看到很多额外的字符。大多数情况下,它们必须是来自 tty 核心的流量控制字符。有什么方法可以禁用来自 tty 核心的这些流量控制字符。 这是我的 ls 命令的样子:

# ls
[0;0m1q[0m            [1;34mbin[0m           [1;34mhome[0m          [1;34mmnt[0m           [1;34msbin[0m          [1;34mvar[0m          [1;34mdev[0m           [1;32minit[0m          [1;34mopt[0m           [1;34msys[0m          [1;34metc[0m           [1;34mlib[0m           [1;34mproc[0m          [1;34mtmp[0m          [1;36mlinuxrc[0m       [1;34mroot[0m          [1;34musr[0m

谢谢。

最佳答案

这些不是流控制字符,它们是 xterms 或其他颜色 ansi 兼容终端设备的属性设置控制字符(特别是颜色设置)。要摆脱它们,请关闭 ls 和其他命令中的自动着色,或将 TERM envvar 设置为不理解颜色(或任何其他)控制的内容。 TERM=dumb 应该可以解决问题。

关于linux - tty 核心流字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9570310/

相关文章:

php - 为什么我不能让 Apache2 为来自/var/www 以外的目录的站点提供服务?

linux - 我如何在 Linux 中发现笔记本电脑触摸板的 ACPI ID?

c++ - HID 设备编程 - 它是否适用于 C++(SETUPAPI.dll 和 HID.dll)

caching - 缓存 - 刷新和无效操作

R 图形 : output to several file formats

python - GUI打不开

linux - org.bluez.error.inprogress 蓝牙错误

c - sscanf 扫描格式化文件时出错

linux-kernel - 从内核空间中的 block 设备读取

linux-kernel - SoftIRQ和Tasklet之间的区别