LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 955|回复: 3

请教大虾终端列数的问题(关于stty命令)

[复制链接]
发表于 2005-12-28 19:14:20 | 显示全部楼层 |阅读模式
我写了一个shell脚本,是输出所有的ASCII码的字符的.但是我在定义终端的列数时却出了一点问题,我明明定义了终端的列数,但是printf命令却并不按我的定义进行格式输出,而是还是按实际的终端的列数输出的,没有在我要求的列数到达之后进行换行.这样使得我的输出很不整齐.请大虾帮忙看看是什么地方还没有定义或是错误.下面是代码:

#!/bin/bash
stty cols 80
for ((i=0;i<=255;i=i+1))
do
        b=16
        declare -i c=$i/$b
        declare -i d=$i%$b
        case $c in
                10)
                m=a
                ;;
                11)
                m=b
                ;;
                12)
                m=c
                ;;
                13)
                m=d
                ;;
                14)
                m=e
                ;;
                15)
                m=f
                ;;
                *)
                m=$c
                ;;
        esac
        case $d in
                10)
                n=a
                ;;
                11)
                n=b
                ;;
                12)
                n=c
                ;;
                13)
                n=d
                ;;
                14)
                n=e
                ;;
                15)
                n=f
                ;;
                *)
                n=$d
                ;;
        esac
        e=$m$n
        printf "$e \x$e\t"
done
printf '\n'
stty cols 128


多谢!!
发表于 2005-12-29 07:22:20 | 显示全部楼层
你的终端最多能显示多少列?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-29 16:26:24 | 显示全部楼层
就是最后一行修改回来的,128列。
回复 支持 反对

使用道具 举报

发表于 2005-12-30 00:12:53 | 显示全部楼层
养成良好的编码习惯,利己利人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表