一、Shell概述

1、什么是shell?



由此可见shell是用户与系统进行交互的接口,通过执行各种命令来完成时间处理与调度。

2、shell分类
Shell类别                易学性        可移植性      编辑性      快捷性
Bourne Shell (sh) 容易 好 较差 较差
Korn Shell (ksh) 较难 较好 好 较好
Bourne Again (Bash) 难 较好 好 好
POSIX Shell (psh) 较难 好 好 较好
C Shell (csh) 较难 差 较好 较好
TC Shell (tcsh) 难 差 好 好
Shell 的两种主要语法类型有 Bourne 和 C,这两种语法彼此不兼容。

Bourne 家族主要包括 sh、 ksh、Bash、psh、zsh。

C 家族主要包括:csh、tcsh (Bash 和 zsh 在不同程度上支持 csh 的语法)。

我们可以通过/etc/shells 文件来查询 Linux 支持的 Shell。

[root@centos ~]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
/bin/tcsh
/bin/csh

二、echo命令及shell脚本执行

1、echo 输出特殊转义字符
echo [选项] [输出内容] 选项:
-e: 支持反斜线控制的字符转换
\\ 输出\本身
\a 输出警告音
\b 退格键,也就是向左删除键
\c 取消输出行末的换行符
\e ESCAPE 键
\f 换页符
\n 换行符
\r 回车键
\t 制表符,也就是 Tab 键
\v 垂直制表符
\0nnn 按照八进制 ASCII 码表输出字符。其中 0 为数字零,nnn 是三位八进制数
\xhh 按照十六进制 ASCII 码表输出字符。其中 hh 是两位十六进制数
-n: 取消输出后行末的换行符号(就是内容输出后不换行)

示例

[root@centos ~]# echo -e "heihei \nhaha \a" #先输出heihei,换行之后再输出一个 haha 最后输出警示音
heihei
haha
2、echo输出颜色
30m=黑色,31m=红色, 32m=绿色,33m=黄色,34m=蓝色,35m=洋红,36m=青色,37m=白色
1)字体颜色
echo -e "\e[1;32m 绿色字体 \e[0m" 2)背景颜色
echo -e "\e[1;42m 绿色背景 \e[0m" 3)闪烁
echo -e "\e[1;5m \e[1;32m 绿色闪烁字体 \e[0m \e[0m "
3、执行shell脚本

执行shell脚本有两种方式,下面是一个简单的shell脚本:

#!/bin/bash   #直接执行时,告诉系统应该用哪一个解释器来执行。
echo -e "\e[1;5m \e[1;32m 你好!! \e[0m "\e[0m
  • 第一种执行方式,直接执行

    添加执行权限,使用相对或者绝对路径来执行
[root@centos ~]# chmod a+x test.sh
[root@centos ~]# . test.sh
你好!
[root@centos ~]# /root/test.sh
你好!
  • 使用解释器 + 脚本 方式执行,不需要添加执行权限。
[root@centos ~]# bash test.sh
你好!

shell概述与echo命令的更多相关文章

  1. shell编程 之 echo命令和printf命令

    1 echo命令基本情况: echo显示普通字符:echo "i am studying shell"(有木有引号都可以) 支持转义字符:echo "\"hel ...

  2. shell编程之echo命令

    Linux echo命令不能显示文件中的内容.显示字符串或者变量功能说明:显示文字.语 法:echo [-ne][字符串]或 echo [--help][--version]补充说明:echo会将输入 ...

  3. shell中使用echo命令改变输出显示样式

    文本终端的颜色可以使用“ANSI非常规字符序列”来生成.举例:echo -e "\033[44;37;5m ME \033[0m COOL" 以上命令设置背景成为蓝色,前景白色,闪 ...

  4. Shell脚本学习-echo命令

    跟着RUNOOB网站的教程学习的笔记 shell的echo指令与PHP的echo指令类似,都是用于字符串的输出.命令格式: echo string 1 显示普通字符串 echo "It is ...

  5. Shell教程 之echo命令

    1.显示普通字符串 这里的双引号完全可以省略,以下命令效果一致: echo "传递参数实例!" echo 传递参数实例! 2.显示转义字符 echo "\"传递 ...

  6. Linux Shell基础 Bash常见命令 echo命令

    概述 shell中常见的命令echo. 输出命令:echo echo命令的输出内容如果没有特殊含义,则将原内容输出到屏幕:如果输出内容有特殊含义,则输出打印其含义. 命令格式如下: [root@loc ...

  7. shell命令:echo命令详解

    功能说明:显示文字. 语 法:echo [-ne][字符串] / echo [--help][--version] 补充说明:echo会将输入的字符串送往标准输出.输出的字符串间以空白字符隔开, 并在 ...

  8. Shell echo命令

    Shell echo命令 echo "It is a test" 这里的双引号完全可以省略 .显示变量 read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shel ...

  9. Shell命令:echo 命令详解

    http://blog.chinaunix.net/uid-27124799-id-3383327.html # echo命令介绍 功能说明:显示文字. 语 法:echo [-ne][字符串] / e ...

随机推荐

  1. Redis的存储类型、集群架构、以及应用场景

    什么是redis redis是一种支持Key-Value等多种数据结构的存储系统.可用于缓存.事件发布或订阅.高速队列等场景.该数据库使用ANSI C语言编写,支持网络,提供字符串.哈希.列表.队列. ...

  2. Vue——watch监听对象,监听嵌套多次的对象属性

    首先是watch 然后是methods

  3. linuxLVM之LV扩大和缩小容量(非xfs文件系统)

    LVM的基础请见:https://www.cnblogs.com/wxxjianchi/p/9698089.html 一.放大LV的容量.放大容量是由内而外来操作的. 1.设置新的lvm分区:用fdi ...

  4. Linux的ftp安装及使用

    FTP服务器的安装与配置(Ubuntu)1.查询是否安装vsftpd:  rpm -qa |grep vsftpd (rpm的安装:apt-get install rpm) 或者查询当前ftp进程:p ...

  5. vsftpd cmds_allowed 权限控制

    vsftpd cmds_allowed cmds_allowed=ABOR,CWD,LIST,MDTM,MKD,NLST, PASS,PASV,PORT,PWD,QUIT,RETR,RMD,RNFR, ...

  6. 转载:不是书评 :《我是一只IT小小鸟》

    本文转载自刘未鹏博客:http://www.mindhacks.cn. 原文地址如下:http://mindhacks.cn/2009/10/05/im-a-tiny-bird-book-review ...

  7. python1:基础数据类型(上)

    https://www.geekdigging.com/2019/10/13/2870915864/ 1.数字 在python的数字有4钟数据类型,分别是: int(有符号整型) long(长整型) ...

  8. 在ubuntu18.04中安装opencv_contrib-3.2.0采坑教程

    由于最近要在OpenCV3中使用SIFT和SURF特征提取,而自从OpenCV2升级到OpenCV3版本后,SIFT.SURF等这些算法都被移出opencv默认项目库,而被放到叫opencv_cont ...

  9. springboot整合activiti

    1.第一步添加bpmn文件得插件,不然没法查看和编辑bpmn文件,添加插件的方法各自百度即可,很简单 2.安装好bpmn插件后开始新建bpmn文件,也就是画流程图 一般是在代码中进行指定流程审批人的, ...

  10. 可能是全网最简单的 OpenStack 安装方式

    OpenStack 因为架构复杂,配置较多,一向以安装部署过程困难闻名.虽然 OpenStack 社区前后涌现出了很多的自动化部署工具,但是对于普通用户,特别是新人来说,上手仍然有难度. 使用本文介绍 ...