偶用tput编的一个选择式菜单(转)

偶用tput编的一个选择式菜单(转)[@more@]

偶编的简单的菜单:感觉还可以,就是运行太慢,可能不实用,但费了偶不少脑筋

,不忍弃之..

######################################

#

# program: MENU_CD

#

######################################

# 屏幕任意位置函数

xy()

{

#_R=row,_C=column

_R=$1

_C=$2

tput cup $_R $_C

}

########## 格式化dd_code.txt文件内容并生成屏幕菜单

clear

xy 1 2

echo '[36m┌────────────────────────────────┐[37m' #注[36m)( 色彩控制符在unix下应该是这样的^[[36m

xy 1 26

echo '[41m[37m业务处理主菜单[40m'

xy 2 2

echo ' '

r_1=2 # 画框行变量

r_row=1 # 记录行变量

c_col=5 # 记录列变量

count=0 # 循环记数器,dd_code.txt文本行变量

wc -l dd_code.txt >menu.tmp

sum=`awk '{print $1}' menu.tmp` ## 循环终止值

while [ $count -lt $sum ]

do

xy $r_1 2

echo '[36m│[37m'

xy $r_1 68

echo '[36m│[37m'

#xy $r_row $c_col

#sed -n ""$count"p" dd_code.txt

################################### 计算列位置

bc <hh.tmp

$count%2

quit

!

###################################

int=`sed -n "1p" hh.tmp`

if [ "$int" = "0" ]; then

c_col=5

r_row=`expr $r_row + 1`

count=`expr $count + 1`

r_1=`expr $r_1 + 1`

xy $r_row $c_col

sed -n ""$count"p" dd_code.txt

else

c_col=5

#r_row=`expr $r_row + 1`

c_col=`expr $c_col + 30`

count=`expr $count + 1`

#r_1=`expr $r_1 + 1`

xy $r_row $c_col

sed -n ""$count"p" dd_code.txt

fi

done

echo " [36m└────────────────────────────────┘[37m"

echo " 请输你的选择[回车则退出]:[32mc"

read choose_dh

echo "[37m"

if [ "$choose_dh" = "" ]; then

rm *.tmp # 删除临时文件

exit 1

fi

..........以后是你就可以是你要调用子程序或子菜单或命令的语句了...

####################################

这是菜单内容文本: dd_code.txt

1 -----菜单名

2 -----菜单名

3 -----菜单名

4 -----菜单名

.......

n -----菜单名

将菜单名改成你所定义的名称,然后运行menu_dd即可.

请大家斧正

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8225414/viewspace-944814/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/8225414/viewspace-944814/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值