在终端我可以通过运行清除另一个终端:
echo -e "\033\0143" > /dev/pts/14
但是,如果我通过以下方式从我的C程序中尝试此操作:
system("echo -e '\033\0143' > /dev/pts/14");
它不会清除屏幕并留下一些垃圾.关于如何做到这一点的任何想法?
我已经用C语言编程了30年,并认为这很容易.
该\0143逃逸是由C或解释,而不是由外壳echo,并且它视为具有\014然后数字3.这最终将字节写入1b 0c 33 0atty,而不是1b 63 0a.-e在这一点上根本没有做任何事情.
我不明白为什么你会这样做,而不是打开tty文件并直接用字节写write(3).无论如何,这确实是一个编程问题.
| 归档时间: | 
 | 
| 查看次数: | 1168 次 | 
| 最近记录: |