提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
一、shell的概念
shell是一个命令解释器,它在操作系统的最外层,负责直接与用户进行对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出到屏幕反馈给用户。这种对话方式可以是交互也可以是非交互的,我们所输入的命令计算器是不识别的,这是就需要一种程序来帮助我们进行翻译,变成计算器能识别的二进制程序,同时又把计算器生成的结果返回给我们。
二、shell的作用
Linux系统中额shell是一个特殊的应用程序,它介于操作系统的内核和用户之间,充当了一个"命令解释器"的角色,负责接收用户输入的操作指令并进行解释,将需要执行的操作传递给内核执行,并输出执行结果。
Shell就是一种特殊的软件,他可以将用户的命令转换成二进制的语言,传递给内核,由内核调动硬件的执行
常见的 Shell 解释器程序有很多种,使用不同的 Shell 时,其内部指令、命令行提示符等方面会存在一些区别。通过/etc/shells 文件可以了解当前系统所支持的 Shell 脚本种类。
[root@mayinbin ~]# cat /etc/shells #查看当前系统所支持的 Shell 脚本种类。
/bin/sh #是bash命令的软链接 (已经被/bin/bash所替换)
/bin/bash #基准于GNU的框架下发展出的Shell
/usr/bin/sh #已经被bash所替换
/usr/bin/bash #centos和redhat系统默认使用bash shell
/bin/tcsh #csh的增强版,与csh完全兼容 整合了csh,提供更多的功能
/bin/csh #已经被/bin/bash 所替换 (整合C shell,提供更多的功能)
注: nologin:可以让用户无法登录主机;
bash ( /bin/bash)是目前大多数Linux版本采用的默认shell。
三、shell脚本概述
(一)、shell脚本的概念
①、将要执行的命令安顺序保存到一个文本文件
②、给该文件可执行权限
③、可结合各种shell控制语句以完成更复杂的操作
(二)、shell脚本的应用场景
重复性操作
交互性任务
批量事物处理
服务运行状态监控
定时任务执行
四、shell脚本的编辑规范及运行方式
(一)、创建shell程序的步骤
#第一步:创建一个包含命令和控制结构的文件。
#第二步:修改这个文件的权限使它可以执行 #使用 #chmod +x 文件名
第三步:执行 ./demo.sh
简单的例子:创建一个可以输出"hello world" 的shell脚本
(二)、shell脚本的构成
1、脚本申明(解释器):若第一行为“#!/bin/bash”表示此行以下的代码语句是通过/bin/bash程序来解释执行,#!/bin/bash为默认解释器。还有其他类型的解释器,比如**#!/uer/bin/python 、#!/uer/bin/expect.**
2、注释信息:以“#”开头的语句表示为注释信息,被注释的语句在运行脚本时不被执行。
3、可执行语句:比如echo命令,用于输出“ ”之间的字符串。
(三)、创建、运行脚本的步骤
1、mkdir 创建一个目录
2、在指定的文件中输入需要执行的命令 ——vim 编辑
3、使用chmod命令赋予脚本执行权限
4、执行脚本,并验证
4.1脚本文件路径(绝对路径和相对路径)
4…1-1方法一:指定路径的命令,要求文件必须要有执行(x)权限
chmod +x +文件名
指定绝对路径:
指定相对路径:
4.1-2方法二:指定shell来解释脚本,不要求文件必须有x权限
sh脚本路径