Linux shell编程学习笔记27:tput

除了stty命令,我们还可以使用tput命令来更改终端的参数和功能。

1 tput 命令的功能

tput 命令的主要功能有:移动更改光标、更改文本显示属性(如颜色、下划线、粗体),清除屏幕特定区域等。

2 tput 命令格式

 tput [选项] [参数]

3 设置文本颜色属性

3.1 tput setaf / setbf :设置前景色 / 背景色

命令格式:

  •   tput setab n : 设置背景色,set text attributes background color
  •   tput setaf  n : 设置前景色,set text attributes front color


​参数n:

  •   0 – Black,黑色
  •   1 – Red,红色
  •   2 – Green,绿色
  •   3 – Yellow,黄色
  •   4 – Blue,蓝色
  •   5 – Magenta,品红
  •   6 – Cyan,青色
  •   7 – White,白色


例子:设置前背景色为黄色(3),背景色为品红(5)。

csdn @ edu bash ~ $ tput setaf 3 setab 5 
csdn @ edu bash ~ $ tput  setab 5 
csdn @ edu bash ~ $ 

看来不能在一个命令中同时设置前景色和背景色,要分开来用两个命令分别设置。

csdn @ edu bash ~ $ tput setaf 3; tput setab 5 
csdn @ edu bash ~ $ 

3.2 tput rev:反显当前的颜色方案

rev源自reverse。

csdn @ edu bash ~ $ tput setaf 3; tput setab 5 
csdn @ edu bash ~ $ tput rev
csdn @ edu bash ~ $ 


4 设置文本模式属性

命令功能
tput bold加粗字体
tput dim打开高亮模式,turn on half-bright mode
tput smul添加下划线,start mode of underline,
tput rmul 取消下划线,remove mode of underline
tput smso突出模式,start mode of standout
tput rmso反显突出模式,reverse mode of standout
tput sgr0set global attributes return to 0, 取消所有属性

csdn @ edu bash ~ $ tput setaf 3; tput setab 5 
csdn @ edu bash ~ $ tput smso
csdn @ edu bash ~ $ tput rmso
csdn @ edu bash ~ $ tput smul
csdn @ edu bash ~ $ tput bold
csdn @ edu bash ~ $ tput rmul
csdn @ edu bash ~ $ tput dim
csdn @ edu bash ~ $ tput sgr0

csdn @ edu bash ~ $

5 设置光标属性

命令功能
tput clear清屏
tput sc保存当前光标位置,save curosr position
tput rc恢复光标位置,restore cursor postion
tput cup row column将光标移动到指定行row和列column,
tput civis 光标不可见,cursor invisible
tput cnorm光标可见,cursor mormal
tpu init清空格式

我们将执行以下命令序列:

tput clear                   # 清屏
tput sc                      # 保存当前光标位置
tput cup 10 13               # 将光标移动到第10行第13列
echo -n Enter your password: # 提示用户输入密码
tput civis                   # 光标不可见
read p                       # 将用户输入的密码保存到变量p中
tput cnorm                   # 光标可见
tput rc                      # 恢复光标位置
echo your password: $p       # 显示用户输入的密码

csdn @ edu bash ~ $ tput clear;tput sc;tput cup 10 13;echo -n Enter your password:;tput civis; read p; tput cnorm; tput rc; echo your password: $p 

6 其它功能

命令功能
tput lines 显示行数
tpus cols显示列数
tput reset  重置终端设置
tput longname显示当前终端类型的长名称
tput hs        具有状态行

csdn @ edu bash ~ $ tput lines
22
csdn @ edu bash ~ $ tput cols
132
csdn @ edu bash ~ $ tput longname
xterm terminal emulator (X Window System)csdn @ edu bash ~ $ 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/173927.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2023年中国羽绒制品需求现状、市场规模及细分产品规模分析[图]

羽绒羽毛指生长在水禽类动物(鹅、鸭)腋下、腹部羽绒和羽毛的统称,属于上游鹅鸭肉食品工业副产品的综合利用,是下游羽绒制品的填充料。根据国家标准,绒子含量≥50%的称为羽绒,绒子含量<50%的称为…

Altium Designer学习笔记5

整体修改元件标号: 重置Reset Schematic Designators: 恢复之前的状态。复位,恢复之前的状态。

Linux下使用宏定义判断系统架构和系统类型

文章目录 查看编译器当前支持的宏定义查找指定的宏不同架构不同系统 附录-编译器内部常用的一些宏定义宏定义实际应用使用宏定义判断系统架构使用宏定义判断系统类型 一般情况下在linux下做C/C方面的开发不需要太关注系统架构,当然如果涉及到不同架构下的适配问题&a…

linux md5sum计算hash指令

在soc启动,验证镜像签名时,会计算文件的hash值,确保文件未被修改,md5sum可以计算,有256,512位的的其他指令, 如下,计算文件hash值。

如何让bug远离你?

想让bug远离你,当然是靠佛祖保佑~ /** *************************************************************************** ******************** ********************* ******************** COPYRIGHT INFORMATION *…

羽毛球馆的绿色之选——气膜体育馆

全球范围内,羽毛球作为一项备受欢迎的室内运动,吸引着数百万人的热爱。然而,要在不受气候和天气限制的情况下享受羽毛球运动,需要一个具备灵活性和经济实惠的场地。因此,气膜体育馆作为搭建羽毛球馆的现代选择&#xf…

循环链表3

插入函数——插入数据,在链表plsit的pos位置插入val数据元素 位置pos(在无特别说明的情况下)是从0开始计数的 要改变链表结构,就要依赖前驱,每个前驱的next存储着下一个数据结点的地址,也就是依靠前驱的ne…

UE 材质,如何只取0~1之间的值,其余值抛弃

假如0~1,floor为0,abs为0,Saturate为0,1-x为1,很好 假如1~2,floor为1,abs为1,Saturate为1,1-x为0,很好 假如2~3,floor为2,abs为2&am…

满二叉树你需要了解一下

满二叉树介绍 满二叉树(Full Binary Tree)是一种特殊的二叉树,其中每个节点都有两个子节点或没有子节点。换句话说,满二叉树的每个层级都是完全填满的。这种树结构具有一定的平衡性,其深度和节点数量之间存在明确的关…

14. UART串口通信

14. UART串口通信 1. UART1.1 UART 通信格式1.2 UART 电平标准1.3 I.MX6U UART 简介1.3.1 控制寄存器1 UARTx_UCR1(x1~8)1.3.2 控制寄存器2 UARTx_UCR21.3.3 控制寄存器3 UARTx_UCR31.3.4 状态寄存器2 UARTx_USR21.3.4 UARTx_UFCR 、 UARTx_UBIR 和 UARTx_UBMR1.3.5 UARTx_URXD…

如何验证命令执行漏洞(无回显)

如何验证命令执行漏洞(无回显) 使用yakit,选择dnslog模块 点击生成一个可用域名 以dvwa为例 命令执行ping一下刚才的域名 随后yakit中会出现回显信息,以此证明拥有命令执行漏洞 信息,以此证明拥有命令执行漏洞

C语言入门——第十七课

一、二分查询 1.概念 二分查询又被称为二分查找,是一种在有序数组或序列中快速查找到对应元素的一种方法。每次查找范围缩小至原来的一半。 ①前提条件 数组和列表必须有序,否则无法进行二分查找。 ②初始化 确定查找数组和列表的左边界&#xff0…

Python实现自动登录+获取数据

前言 大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 Dy这个东西想必大家都用过,而且还经常刷,今天就来用代码,获取它的视频数据 如果有什么疑惑/资料需要的可以点击文章末尾名片领取源码 环境使用 Python 3.8 Pycharm 模块使用 request…

时间序列中的6大类10种异常值处理方法(从根源上提高预测精度)

一、本文介绍 本文介绍的内容是在时间序列中异常值处理的方法,当我进行时间序列分析建模收集数据的过程中,往往都存在着一些特数据情况导致数据中存在着一些异常值,这些异常值往往会导致模型识别到不正常的模式从而无法准确的预测&#xff0…

每日一题(LeetCode)----数组--螺旋矩阵(一)

每日一题(LeetCode)----数组–螺旋矩阵(一) 1.题目(54. 螺旋矩阵) 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 1: 输入:matrix [[1…

Springboot+vue的社区医院管理系统(有报告),Javaee项目,springboot vue前后端分离项目

演示视频: Springbootvue的社区医院管理系统(有报告),Javaee项目,springboot vue前后端分离项目 项目介绍: 本文设计了一个基于Springbootvue的前后端分离的应急物资管理系统,采用M(model)V&am…

JavaApp自动化测试系列[v1.0.0][四种等待方式]

四种等待 隐式等待:是在尝试发现某个元素的时候,如果没能立刻发现,就等待固定长度的时间。默认设置是0秒。一旦设置了隐式等待时间,它的作用范围就是Webdriver对象实例的整个生命周期显示等待:定义了等待条件&#xf…

Python (十二) 文件

程序员的公众号:源1024,获取更多资料,无加密无套路! 最近整理了一份大厂面试资料《史上最全大厂面试题》,Springboot、微服务、算法、数据结构、Zookeeper、Mybatis、Dubbo、linux、Kafka、Elasticsearch、数据库等等 …

chrome内置路径合集

设置黑夜模式: 输入网址:chrome://flags/ 搜索dark 改为enable 实验项目路径 chrome://flags/ 可用来启用或者关闭某些 Chrome 的实验功能 chrome://settings 将快速打开 Chrome 浏览器的设置页面,页面的内容分类划分为基础和高级设置选项 …

JOSEF 静态中间继电器 ZJY-420 DC220V 板前接线,带底座 增加触点

系列型号: ZJY-400中间继电器;ZJY-600中间继电器; ZJY-800中间继电器;ZJY-020中间继电器; ZJY-040中间继电器;ZJY-060中间继电器; ZJY-006中间继电器;ZJY-008中间继电器;…