一、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. 微信二维码添加logo

    生成带参数的二维码 为了满足用户渠道推广分析和用户帐号绑定等场景的需要,公众平台提供了生成带参数二维码的接口.使用该接口可以获得多个带不同场景值的二维码,用户扫描后,公众号可以接收到事件推送. 目前有 ...

  2. java中大整型BigInteger及setBit和testBit方法

    最近在修改公司之前的项目,在项目中遇到了权限校验的问题,代码中出现了BigInteger的setBit()testBit()方法,之前未接触过,所以了解了下BigInteger. 在Java中,由CP ...

  3. 如何使用Selenium来计算自动化测试的投资回报率?

    跨浏览器测试是一种测试,需要大量的精力和时间.通过不同的浏览器,操作系统,设备,屏幕分辨率测试Web应用程序,以评估针对各种受众的Web内容呈现的过程是一项活动.特别是如果手动处理.使用Seleniu ...

  4. 简单入门Kubernetes

    什么是Kubernetes 官网 https://kubernetes.io/ 中文版:https://kubernetes.io/zh/ 个人理解 基于容器技术 分布式架构 弹性伸缩 隔离物理机 和 ...

  5. 品优购详情页---产品详细信息区域 iteminfo_wrap

    产品详细信息区域为整个大盒子命名为: iteminfo_wrap 1号盒子命名为:sku_name 2号盒子命名为:news 3号盒子命名为:summary step1:3个盒子搭建框架,以及完成前两 ...

  6. 英语口语考试资料Food

    新东方推荐文章:Food and Health The food we eat seems to have profound effects on our health. Although scien ...

  7. rsync通过服务同步、Linux系统日志、screen工具 使用介绍

    第8周5月15日任务 课程内容: 10.32/10.33 rsync通过服务同步10.34 linux系统日志10.35 screen工具 扩展1. Linux日志文件总管logrotate http ...

  8. C语言I作业09

    问题 回答 这个作业属于哪个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/10032 我在 ...

  9. 分布式主键解决方案之--Snowflake雪花算法

    0--前言 对于分布式系统环境,主键ID的设计很关键,什么自增intID那些是绝对不用的,比较早的时候,大部分系统都用UUID/GUID来作为主键,优点是方便又能解决问题,缺点是插入时因为UUID/G ...

  10. 转:使用JSR-303进行校验 @Valid

    一.在SringMVC中使用 使用注解 1.准备校验时使用的JAR validation-api-1.0.0.GA.jar:JDK的接口: hibernate-validator-4.2.0.Fina ...