Shellshell脚本的基础知识

Posted S4061222

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shellshell脚本的基础知识相关的知识,希望对你有一定的参考价值。


一、什么是shell

和内核沟通的工具,脚本中命令的解释

二、shell脚本的意义

1.记录命令执行的过程和执行逻辑,以便以后重复执行
2.脚本可以批量处理主机
3.脚本可以定时处理主机(结合crontab)

三、如何创建shell脚本

#!/bin/bash
##幻数,脚本在运行时最先执行的程序,所有命令运行的环境

1. 自动添加脚本首部

编辑配置文件 vim ~/.vimrc,针对自己生效
在这里插入图片描述

2. F4按键

map <F4> ms:call WESTOSTITLE()<cr>
#F4执行,调用函数WESTOSTITLE(),""注释
func WESTOSTITLE() #函数必须大写()
call append(3,"# Create_Time: ".strftime("%Y/%m/%d"))
#自动采集时间,两段内容用.连接,#0表示第一行,3表示第3行

在这里插入图片描述测试:
新文件
在这里插入图片描述

3.自动

autocmd BufNewFile *.sh,*.script call WESTOSTITLE()
#自动执行:以.sh和.script结尾的新的文件都调用WESTOS函数
autocmd BufNewFile *.sh setlocal sw=2 ts=2 et ai
#sw=2:缩进单位为2个空格,et:tab转空格,ai自动缩进,ts:1个tab=2空格

在这里插入图片描述测试:
新文件
在这里插入图片描述
在这里插入图片描述

四、如何执行shell脚本

1.手动在环境中开启指定解释器

sh script.sh
在这里插入图片描述sh westos1.sh 运行脚本,按 ctrl + z 将其打入后台,输入 ps f 来查看进程信息,可以看到此脚本的运行是在当前shell 中在开启了一个 shell 进程,此时指定的是用 sh 解释器;

2.直接在当前环境中运行shell中的指令不开启新的shell

source script.sh
在这里插入图片描述. script.sh
在这里插入图片描述输入命令 source westos1.sh 和 . westos1.sh 运行脚本,按 ctrl + z 将其打入后台,输入 ps f 来查看进程信息,可以看到此脚本的运行是在当前 shell 中运行;

3.开启脚本中指定的shell并使用此shell环境运行脚本中的指令

chmod +x script.sh
/xxx/xxx/script.sh #绝对路径

在这里插入图片描述

五、如何对脚本进行调试

sh -x /mnt/westos.sh #-x:脚本过程进行显示

+     ##运行指令
不带+  ##命令运行的输出

在这里插入图片描述

测试

1.host_messages.sh 显示当前主机的名称,ip登陆当前主机的用户

hostname: xxxxx
ipaddress: xxxx.xxxx.xxx.xxx
username: root

在这里插入图片描述在这里插入图片描述在这里插入图片描述

2.clear_log.sh 执行次脚本后可以清空日志

$0脚本本身
在这里插入图片描述
在这里插入图片描述

以上是关于Shellshell脚本的基础知识的主要内容,如果未能解决你的问题,请参考以下文章

三分钟带你学shellshell编程基础

Shellshell脚本练习

Shellshell 的执行流控制

Shellshell脚本中的变量

ShellShell 脚本自动输入密码的三种方式

Shell基础知识