Linux命令之修改终端属性tput

概述

编写命令行shell脚本时,总是免不了处理当前终端的相关信息,比如行数、列数、光标位置、遮盖的密码字段等。tput 命令可以采集终端信息,并进行一些设置如移动或更改光标、更改文本属性,以及清除终端屏幕的特定区域。

在这里插入图片描述



语法

该命令的语法如下:

用法:
       tput [-Ttype] capname [parms ... ]
       tput [-Ttype] init
       tput [-Ttype] reset
       tput [-Ttype] longname
       tput -S  <<
       tput -V
       
       
(1)字符串输出参数设置 
  bel       警铃 
  blink     闪烁模式 
  bold      粗体 
  civis     隐藏光标 
  clear     清屏 
  cnorm     不隐藏光标 
  cup       移动光标到屏幕位置(x,y) 
  el        清除到行尾 
  ell       清除到行首 
  smso      启动突出模式 
  rmso      停止突出模式 
  smul      开始下划线模式 
  rmul      结束下划线模式 
  sc        保存当前光标位置 
  rc        恢复光标到最后保存位置 
  sgr0      正常屏幕 
  rev       逆转视图 
(2)数字输出参数设置 
  cols      列数目 
  ittab     设置宽度 
  lines     屏幕行数 
(3)布尔输出参数设置 
  chts      光标不可见 
  hs        具有状态行  


使用

获取终端的行数和列数

获取当前终端的行数和列数,命令格式如下:

# 获取终端的列数
tput cols
# 获取终端的行数
tput lines

在这里插入图片描述

打印当前的终端名

打印当前的终端名,命令如下:

# 语法
tput longname

将光标移动到指定坐标处

将光标移动到指定坐标的语法如下:

# 语法
tput cup x坐标 y坐标
# 示例,移动到坐标(20,50)处
tput cup 20 50

在这里插入图片描述

设置终端背景色

可以设置终端的背景色,命令格式如下:

# 语法
tput setb n
# 示例,设置背景色为红色
tput setb 4

通常情况下,分配的数值与颜色的对应关系如下,但是可能会因 UNIX 系统的不同而异:

  • 0:黑色
  • 1:蓝色
  • 2:绿色
  • 3:青色
  • 4:红色
  • 5:洋红色
  • 6:黄色
  • 7:白色

在这里插入图片描述

注意,如果在 XShell 中没有显示成功,可以调下配色方案,Black on White 是不会显示成功的。
在这里插入图片描述

修改前景色

如果要修改终端的前景色(即文本的颜色),命令格式如下:

# 语法
tput setf n
# 示例,修改文本颜色为黄色
tput setf 6

在这里插入图片描述

反显当前的配色方案

即如果当前的背景色是红色,前景色是黄色,那么反显之后是背景色是黄色,前景色是红色。命令格式如下:

tput rev

在这里插入图片描述

设置文本样式为粗体

如果要设置文本样式为加粗,命令格式如下:

tput bold

在这里插入图片描述

设置下划线的起止

如果要设置文本的下划线,可以通过如下命令:

# 设置下划线的开始
tput smul
# 设置下划线的结束
tput rmul

在这里插入图片描述

删除从当前光标位置到行尾的所有内容

如果要删除从当前光标位置到行尾的所有内容,命令格式如下:

tput ed

清屏

等同于 clear 命令。格式如下:

tput clear

设置光标可见和不可见

如果要设置光标可见和不可见,命令格式如下:

# 设置光标不可见
tput civis
# 设置光标可见
tput cnorm

在这里插入图片描述

重置终端设置

如果要重置所有的终端设置如颜色字体等设置,可以通过如下命令:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值