1.shell的作用
shell是Linux系统中后台运行的一种特殊程序也可以理解 成一种特殊的软件,提供了用户与内核进行 交互操作的 一种接口。(简单的说就是shell把人类的高级语言转换成二进制数据,让机器明白你的指令) 过程:用户发出指令,通过shell转换成二进制语言被内核识别,内核再调度相对应的硬件,做出相关操作。
1.2 常见的shell解释器
cat /etc/shells
bash:基于GUN的框架下发展的shell
csh:类似C语言的shell
tcsh:整合了csh 提供了更多功能
sh:已经被bash替换
nologin:让用户无法登录
bash(/bin/bash)是目前大多数 Linux 版本采用的默认 shell。
bash的特性:
1. 支持快捷键:比如 ctrl+c 强制终止进程 、 ctrl+l 清屏 、Tab补齐 等等。
2. 支持查看历史命令(history)
3. 支持别名(alias)
4. 标准输入和标准输出的重定向
5. 管道符
6. 文件名通配机制
7. 支持命令hash
8. 支持变量
2.shell脚本的编写规范和执行方法
2.1 shell脚本的编写规范 脚本的命名规范:都是基本名称,以“.bash”为结尾。 脚本代码开头一些规范化:
1. 第一行一般为调用使用的语言
2. 程序名,避免更改文件名后无法找到正确的文件
示例:vim demo1.sh
bash demo1.sh --运行输出
2.2 shell脚本的执行方法
指定路径方式执行有两种,一种是绝对路径的方式去执行,一种是相对路径的方式去执行(但是执行的 前提一定是该脚本文件拥有执行的权限!)
相对路径的执行方式:
chmod +x demo1.sh --增加权限
./demo1.sh --相对路径执行
/root/demo1.sh --绝对路径执行