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脚本的基础知识的主要内容,如果未能解决你的问题,请参考以下文章