最近在搞终端的咚咚,涉及到ansi控制码的问题,网上搜了一通,也学到不少。如果你telnet到一个linux服务器上,然后输入命令,比如vi test.c,然后客户端可以看到test.c文件的内容,如果抓包的话,可以看到数据包里面不止包括test.c的内容,还有一些看似乱码的东西。比如下面这种:
int num, fd;/033[22;9Hchar m[6000];/033[23;9Hchar r[6000];/033[24;9H// struct rlimit rl;/033[25;9H// i
以“/033[ ”开头的就是ansi控制码了。使用ansi控制码可以控制字符的位置,显示的效果(颜色,反显等)。
我原来用SecureCRT来telnet linux服务器时,默认没有开颜色方案,效果就是:
没颜色,只有加不加粗。
启用SecureCRT颜色方案后,感觉怪怪的,好像有些地方显示不对。如果用putty的话效果就好多了:
可以看到有不同颜色。还有背景色。
如果要清除控制码的话,可以使用正则表达式(这个还没学过,以后再弄。) |