AI智能
改变未来

Linux-shell编程基本介绍


Shell 简介

Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。
实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核。不仅如此,Shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序。Shel编程语言具有普通编程语言的很多特点,比如它也有循环结构和分支、控制结构等,用这种编程语言编写的Shell程序与其他应用程序具有同样的效果。

Shell 的分类

Linux中shell有多种类型,其中最常用的几种是Bourne shell系列和C shell系列
Bourne shell是UNIX最初使用的shell,并且在每种UNIX上都可以使用。Bourne shell在shell编程方面相当优秀,但在处理与用户的交互方面做得不如其他几种shell。
Linux操作系统默认的shell是Bourne Again shell,它是Bourne shell的扩展,简称Bash,与Bourne shell完全向后兼容,并且在Bourne shell的基础上增加、增强了很多特性。Bash放在/bin/bash中,它有许多特色,可以提供如命令补全、命令编辑和命令历史表等功能,它还包含了很多C shell中的优点,有灵活和强大的编程接口,同时又有很友好的用户界面。

Shell类型                  易学性    可移至性      编辑性     快捷性Bourne shell(sh)          容易       好          较差       较差Bourne Again shell(bash)   难       较好         好         好C shell(csh)              较难       差         较好        较好TC shell(tcsh)             难        差          好         好

查询Linux中支持的shell类型:

[root@localhost ~]# cat /etc/shells/bin/sh/bin/bash/usr/bin/sh/usr/bin/bash

Shell脚本的执行方式

echo 命令

echo  [选项]  [输出内容]-e  支持反斜线控制的字符转换-n  取消输出后行尾的换行符号

-e选项 支持的特殊符号列表


特别记住两个 :\\ n:换行符 \\t :制表符

[root@localhost ~]# echo -e \"a\\tb\\tc\\nd\\te\\tf\"a	b	cd	e	f

echo 显示颜色

格式:“\\e[m”代表颜色输入开始;“\\e[m” 代表颜色输入结束!文字颜色:30=黑色,31=红色,32=绿色,33=黄色,34=蓝色,35=紫色,36=天蓝,37=白色,39=结束底纹颜色:40=黑色,41=红色,42=绿色,43=黄色,44=蓝色,45=紫色,46=天蓝,47=白色,49=结束特殊的显示:\\e[0m 关闭所有属性\\e[1m 设置高亮度\\e[4m 下划线\\e[5m 闪烁\\e[7m 反显\\e[8m 消隐注意:多个条件之间用分号(;)分割开,同时生效

创建一个合格的shell脚本
创建shell脚本文件,一般以.sh作为脚本后缀(好识别),也可不写。

[root@localhost ~]# ./hello.sh#!/bin/bash#This is my first piece of codeecho \"We will print hello world of 7 colors.\"echo -e \"\\e[30;1mhello world\\e[0m\"echo -e \"\\e[31;1mhello world\\e[0m\"echo -e \"\\e[32;1mhello world\\e[0m\"echo -e \"\\e[33;1mhello world\\e[0m\"echo -e \"\\e[34;1mhello world\\e[0m\"echo -e \"\\e[35;1mhello world\\e[0m\"echo -e \"\\e[36;1mhello world\\e[0m\"

执行shell脚本
shell 脚本作为一种脚本程序文件,该如何运行?
方法一:添加x 执行权限(相对或绝对路径执行)

[root@localhost ~]# chmod +x hello.sh    #给文件执行权限


方法二:用bash命令,调用脚本文件
不用给权限直接执行

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » Linux-shell编程基本介绍