别名就是一种便捷方式,可以为用户省去输入一长串命令序列的麻烦。下面我们会看到如何

使用 alias 命令创建别名。

直接使用alias就是显示当前有哪些别名,否则就是创建别名

[root@dns-node2 ~]# alias   # 显示别名
alias cp='cp -i'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto' [root@dns-node2 ~]# alias mycmd='ls /root' # 创建别名
[root@dns-node2 ~]# mycmd
anaconda-ks.cfg Desktop Documents Downloads install.log

在命令行创建别名是暂时的,一旦关闭当前这个终端,设置过的别名就失效了,为了永久生效,我们需要导入到/etc/profile 或者~/.bashrc下

[root@dns-node2 ~]# echo "alias mycmd='ls /root'" >>/root/.bashrc

想要破解别名的话,就使用\来转义

举个例子:

[root@dns-node2 ~]# \mycmd
-bash: mycmd: command not found
[root@dns-node2 ~]# \ls # 非别名是无效的即使加上\
anaconda-ks.cfg Desktop Documents Downloads install.log install.log.syslog Music ossec-hids-2.8.3 ossec-hids-2.8.3.tar.gz Pictures Public Templates Videos
[root@dns-node2 ~]# \ll
-bash: ll: command not found

采集终端信息

编写命令行shell脚本时,总是免不了处理当前终端的相关信息,比如行数、列数、光标位置、

遮盖的密码字段等。

tput 和 stty 是两款不错的工具

tput

1.获取终端的行数和列数:

tput cols
tput lines

2.打印出当前的终端名:

tput longname

3.将光标移动到坐标(100,100)处:

tput cup 100 100

4.设置终端背景色:

tput setb n

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

5.设置终端前景色:

tput setf n

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

6.设置文本样式为粗体:

tput bold

7.设置下划线的起止:

tput smul
tput rmul

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

tput ed

9.输入密码时,脚本不应该显示输入内容。在下面的例子中,我们将看到如何使用 stty 来

实现这一需求:

stty -echo  # 此时隐藏所有的输入
stty echo # 显示所有的

9.1.具体参考的例子:

#!/bin/sh
#Filename: password.sh
echo -e "Enter password: "
# 在读取密码前禁止回显
stty -echo
read password
# 重新允许回显
stty echo
echo
echo Password read
有趣的倒计时
#!/bin/bash
#文件名: sleep.sh
echo 倒计时10秒
echo
tput sc # 存储光标的位置
# 循环40秒
for count in {10..0}
do
tput rc # 恢复之前存储的光标的位置
tput ed # 清除从当前光标位置到行尾之间的所有内容,行被清空之后,脚本就可以显示出新的值。
echo -n "倒计时 $count"
sleep 1
done

shell基础知识4--别名、采集终端信息的更多相关文章

  1. Linux shell基础知识(上)

    Linux shell基础知识(上) 目录 一.shell介绍 二.命令历史 三.命令补全和别名 四.通配符 五.输入输出重定向 六.管道符和作业控制 七.shell变量 八.环境变量配置文件 九.b ...

  2. Linux Shell 基础知识(一)

    1. 本文知识结构 2. shell 基础知识 2.1 shell 简单介绍 ​ GNU bash shell 能提供对 Linux 系统的交互式访问,一般来说,使用快捷键 Ctrl + Alt + ...

  3. Shell 基础知识和总结

    调试脚本 检查脚本语法错误 bash -n /path/to/some_script 调试执行 bash -x /path/to/some_script shell里的变量 本地变量:只对当前shel ...

  4. shell基础知识总结

    1. shell 对于一台计算机而言,其硬件受系统内核的控制,使用者想要控制计算机,就必须有与系统内核进行通讯的手段.而shell就是使用者与计算机进行通讯的手段之一.从命名上看,shell其实是相对 ...

  5. shell基础知识---与监听服务器长连接端口状态

    从未写过脚本我的最近接了俩脚本的需求,就在这分享一下我的我学到基础知识主要就四部分内容 一.变量 变量的定义 string='字符串' string="字符串" num=808st ...

  6. shell基础知识讲解

    第1章 shell基础 1.1 什么叫做shell编程 shell编程也叫做bash高级编程语法 1.2 常见的shell命令解释器 bash            redhat和centos使用 d ...

  7. shell基础知识5-函数

    函数的定义 function fname(){ } 或者 function_name(){ } 对于简单的函数,甚至可以是这样做 fname() { statement; } 函数调用 直接写函数名即 ...

  8. shell基础知识

    Shell 学习基础 1.组合命令的符号 管道,将前面一个命令的结果作为后面一个命令的输入 分号,顺序执行用分号分割的命令 重定向,重定向包括三种:输入重定向.输出重定向.错误重定向,以7个不同的符号 ...

  9. shell从入门到精通进阶之一:Shell基础知识

    1.1 简介 Shell是一个C语言编写的脚本语言,它是用户与Linux的桥梁,用户输入命令交给Shell处理,Shell将相应的操作传递给内核(Kernel),内核把处理的结果输出给用户. 下面是处 ...

随机推荐

  1. 行业——5G

    1.  概述 1.1  定义 5G:5th Generation Mobile Networks / 5th Generation Wireless Systems,第5代移动通信技术 1.2  商标 ...

  2. python测试开发django-66.图片403forbidden

    前言 用 django 开发 web 页面,在 HTML 页面上添加图片时,发现本地图片可以正常显示,但是添加一个互联网的图片,却不能正常显示. 本地 static 图片 先在本地 static 放一 ...

  3. 服务器端渲染 VS 浏览器端渲染

    这里的渲染,就是指生成html文档的过程,和浏览器渲染html没有关系. 浏览器端渲染,指的是用js去生成html,前端做路由.举例:React, Vue等等前端框架.适合单页面应用程序. 服务器端渲 ...

  4. java 如何用pattern 和 Matcher 来使用正则表达式(一)

    近期用到了java或者scala的正则表达式的用法,抽点时间总结一下: 转自:https://www.cnblogs.com/haodawang/p/5967219.html java的regex库 ...

  5. refPoint 别名与指针

    // refPoint.cpp : Defines the entry point for the console application. // #include "stdafx.h&qu ...

  6. 第一个python&selenium自动化测试实战项目

    说明:本项目采用流程控制思想,未引用unittest&pytest等单元测试框架 一.项目介绍 目的 测试某官方网站登录功能模块可以正常使用 用例 1.输入格式正确的用户名和正确的密码,验证是 ...

  7. reids 数据库学习

    最近项目中用到了redis数据库,学习整理下 redis操作学习手册--key操作命令 http://www.cnblogs.com/stephen-liu74/archive/2012/03/26/ ...

  8. Bzoj 4517: [Sdoi2016]排列计数(排列组合)

    4517: [Sdoi2016]排列计数 Time Limit: 60 Sec Memory Limit: 128 MB Description 求有多少种长度为 n 的序列 A,满足以下条件: 1 ...

  9. P1005 矩阵取数

    题目链接 看完题可能第一时间并没有清晰的思路.让我们一步一步的来考虑这道题目. 题目中描述操作为每次从所有的行中选取,这样做有些麻烦.仔细思考一下可以发现行与行之间互不干涉,所以我们可以对每行操作到底 ...

  10. VUE的生命周期——钩子函数