Linux基础知识(10): Shell概述和Shell脚本


注:转载请标明原文出处链接:https://xiongyiming.blog.csdn.net/article/details/105886969


1 概述

1.1 Shell是什么

计算机硬件是由运算器、控制器、存储器、输入/输出设备等共同组成的,而让各种硬件设备各司其职且又能协同运行的东西就是系统内核。Linux系统的内核负责完成对硬件资源的分配、调度等管理任务。一般不建议直接去编辑内核中的参数,而是让用户通过基于系统调用接口开发出的程序或服务来管理计算机,如下图所示:

在这里插入图片描述


Shell是一个命令行解释器,它为用户提供一个向Linux内核发送请求以便运行程序的界面系统级程序。用户可以用Shell来启动、挂起、停止、编程等操作。
Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。
Shell还是一个功能强大的编程语言、编写方面、调试方便、灵活性强。
Shell是解释执行的脚本语言,在Shell中可以直接调用Linux系统命令。

注: 用户不能直接访问内核,需要通过Shell访问内核。



1.2 Shell的分类

Shell 编程跟 JavaScript、php 编程类似,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。

Linux 的 Shell 种类众多,主要类型有:Bourne Shell 、Bourne Again Shell和C Shell。
(1) Bourne Shell :从1979起,Unix系统就开始使用Bourne Shell,Bourne Shell的主文件名为sh。Bourne Shell家族主要包括 sh、ksh、Bash、psh、zsh。
(2) C Shell:主要是在BSD版的Unix系统中使用,其语法和C语言类似。C Shell家族主要包括 csh、tcsh。

(3) Bash(Bourne Again SHell) 与sh兼容,现在使用的Linux就是使用Bash作为用户的基本Shell。Bash 也是大多数Linux 系统默认的 Shell。




2 Shell脚本

2.1 echo输出命令

echo命令用于在终端输出字符串或者变量提取后的值。echo命令格式为:

echo [选项] [字符串 或 $变量]

其中选项参数及作用:
-e 表示支持反斜杠控制的字符控制,其中控制字符有:

在这里插入图片描述


例如:
(1) 输出指定字符串 Hello World

在这里插入图片描述


(2) 换行控制字符

在这里插入图片描述


(3) 输出提取变量值SHELL的值
在这里插入图片描述


(4) 输出字符更改颜色,输入命令

echo -e “\e[1;31m Hello World \e[0m”

在这里插入图片描述


其中输出字符颜色常见的有:

  1. 30m 表示黑色;
  2. 31m 表示红色;
  3. 32m 表示绿色;
  4. 33m 表示黄色;
  5. 34m 表示蓝色;
  6. 35m 表示洋红色;
  7. 36m 表示青色;
  8. 37m 表示白色;



2.2 第一个Shell脚本

建立脚本文件,然后写入程序,然后终端调用脚本文件。

(1) 第一步: 输入命令:vi hello.sh 建立hello.sh脚本文件
在这里插入图片描述


(2) 第二步: 写程序,然后保存退出。程序如下所示:

#! /bin/bash
#The first program

echo -e “\e[1;31m Hello World \e[0m”

在这里插入图片描述



注意事项:

  1. 符号 #! 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行(使用哪一种 Shell来执行程序)。
  2. 在一般情况下并不区分 Bourne Shell 和 Bourne Again Shell,所以,#!/bin/bash 也可以改为 #!/bin/sh

(3) 第三步: 脚本执行。有两种执行方法:

方法1:赋予执行权限,直接运行,命令如下:

chmod 755 hello.sh
./hello.sh

方法2:通过Bash调用执行脚本,命令如下:

bash hello.sh 

脚本执行结果如下图所示:

在这里插入图片描述


也可以通过 vim hello.sh 建立脚本,一般常用vim方式建立脚本。

在这里插入图片描述


(1) 写脚本

在这里插入图片描述


(2) 执行脚本

在这里插入图片描述



2.3 vi/vim 编辑、保存、退出快捷键

(1) 编辑脚本
vi 脚本名vim脚本名 进入脚本,按 i 键insert键 开始编辑脚本


(2) 退出脚本编辑模式
脚本写完后想退出脚本需要先按 ESC键,然后由三种方式退出编辑模式:

  1. 键盘输入: : q! 表示不保存文件,然后退出;
  2. 键盘输入: : w 表示保存文件,不退出;
  3. 键盘输入: : wq 表示保存文件,然后退出;




参考资料

https://www.runoob.com/linux/linux-shell.html

原创文章 201 获赞 2087 访问量 102万+

猜你喜欢

转载自blog.csdn.net/zaishuiyifangxym/article/details/105886969