Shell的基础知识

什么是shell?

shell 也是操作系统中的一个软件,它包在 linux 内核的外面,为用户和内核之间的交互提供了一个接口系统中的命令用 shell 去解释,shell 接收系统回应的输出并显示其到屏幕中bash = GNU Bourne-Again Shell
在这里插入图片描述
在这里插入图片描述

什么是shell脚本?

脚本是一种解释型语言,用shell脚本保存执行动作,用脚本判定命令的执行条件,用脚本实现动作的批量执行。

shell文件

/usr/bin/shell 包含 shell 命令。
/etc/security/user 包含用户的扩展属性。
/etc/passwd 包含用户标识。
/etc/group 包含组标识。
/etc/security/audit/config 包含审计配置信息。
/etc/security/environ 定义用户的环境属性。
/etc/security/limits 定义每个用户的进程资源限制。

什么是内核?

内核是操作系统的内部核心程序,它向外部提供了对计算机设备的核心管理调用。
内核,是一个操作系统的核心。是基于硬件的第一层软件扩充,提供操作系统的最基本的功能,是操作系统工作的基础,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。
内核是由一系列程序组成,只是程序的调度器,但是不能直接被设别,如果直接被调度的话,会被篡改,会导致系统程序凌乱,决定了程序的优先级。
系统是一个多用户多任务的,那么就存在优先级的问题。
主要负责管理系统资源。

如何创建新shell脚本

vim file.sh 用vim编写脚本
#!/bin/bash 脚本使用的解释器,通常用幻数“#!”指定
#AUTHOR 脚本作者
#DATE 脚本创作时间
#MAIL 脚本作者联系方式
#VERSION 脚本的版本

在配置文件中建立使其自动生成shell脚本的常规操作
vim 的配置文件:/etc/vimrc
自动调用 (快捷键) 调用函数
8个"#"是一个table
两部分“.”链接;
Buf:状态;
快捷键生成:map ms:call WESTOS()'s
自动生成:autocmd BufNEWFile *.sh exec “:call WESTOS()”
#将以.sh结尾的文件,运行WESTOS()函数,
在这里插入图片描述

执行方式

sh bash file.sh 当前的shell开启一个子shell
在这里插入图片描述
source file.sh 当前shell上运行,不会出现子shell

用ps f查看进程树
在这里插入图片描述在这里插入图片描述

. file.sh 和source的作用类似;
./file.sh 需要可执行权限 ==== 当前用户下的文件,绝对路径,
当前的shell开启一个子shell
两个不同的 shell
在这里插入图片描述在这里插入图片描述

脚本的调式

sh -x scritps.sh
vim scritps.sh shell脚本必须有x权限

#!/bin/bash
date 时间
cal 日志
watch -n 1 date 监控
在这里插入图片描述
sh -x file.sh 适用于所有的shell脚本,-x作用:是将执行命令和输出内容一起输出
+执行
非+输出
在这里插入图片描述

练习:
1、执行ip_show.sh 显示当前主机的ip地址
ifconfig | awk ‘/inet>/&&!/127.0.0.1/{print $2}’
注意:后面的’'如果写成引号""那么会造成报错
在这里插入图片描述
2、执行user_show.sh 显示当前主机中能登陆系统的用户
在这里插入图片描述
在这里插入图片描述
3、执行host_message.sh 显示当前主机的名称,ip,以及能够登陆系统的用户
在这里插入图片描述
在这里插入图片描述

4、clear_log.sh 执行命令后可以清空日志;
-eq相当于"="

#!/bin/bash
[ "$USER" = "root" ]&&{ ##当用户是主机root的时候,可以进行删除,否则无权限;!!
> /var/log/messages
echo -e "\033[32m clean /var/log/messages successful!!\033[0m"
}||{
echo -e "\033[31mThis script must run with root!!!\033[0m"
}
在这里插入图片描述在这里插入图片描述
echo的颜色划分的时候
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值