Shell 采集终端信息

Shell 采集终端信息,编写命令行shell脚本时,总是免不了处理当前终端的相关信息,比如行数、列数、光标位置、遮盖的密码字段等。这则攻略将帮助你学习如何采集并处理终端设置。
Shell 采集终端信息

Shell 采集终端信息 预备知识

tputstty是两款终端处理工具。

Shell 采集终端信息 实战演练

下面是一些tput命令的功能演示。

  • 获取终端的行数和列数:
tput cols
tput lines
  • 打印出当前的终端名:
tput longname
  • 将光标移动到坐标(100,100)处:
tput cup 100 100
  • 设置终端背景色:
tput setb n

其中,n可以在0到7之间取值。

  • 设置终端前景色:
tput setf n

其中,n可以在0到7之间取值。

包括常用的color ls在内的一些命令可能会重置前景色和背景色。
– 设置文本样式为粗体:

tput bold
  • 设置下划线的起止:
tput smul
tput rmul
  • 删除从当前光标位置到行尾的所有内容:
tput ed
  • 输入密码时,脚本不应该显示输入内容。在下面的例子中,我们将看到如何使用stty来实现这一需求:
#!/bin/sh
#Filename: password.sh
echo -e "Enter password: "
# 在读取密码前禁止回显
stty -echo
read password
# 重新允许回显
stty echo
echo
echo Password read.

stty命令的选项-echo禁止将输出发送到终端,而选项echo则允许发送输出。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程