shell脚本的基础知识

什么是shell:

shell是脚本命令的解释器。

shell脚本的意义:

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

如何创建shell脚本:

1)脚本中必须有 #!/bin/bash ,叫做幻数,表示此脚本是使用/bin/bash开解释执行的,其中‘#!’是特殊的表示字符,后面跟的是解释此脚本的shell路径。
2)vim自动添加脚本首部,为了方便了解脚本的基本信息,如创作者、创作时间等,可以在脚本前面加上一些简单的基本信息,为了简化每次在写脚本前,都要先写基本信息,可以在vim中设置,使脚本自动添加首部:

编辑vim ~/.vimrc文件:
在这里插入图片描述
新建脚本,会有如此显示:
在这里插入图片描述

如何执行shell脚本:

1)手动在环境中开启之指定解释器,输入“sh script.sh”即可。
2)直接在当前环境中运行shell中的指令不开启新的shell,输入“source script.sh”或 “. script.sh”。
3)开启脚本中指定的shell并使用此shell环境运行脚本中的指令。

当文本无可执行权限时:
编辑westos.sh脚本:
在这里插入图片描述
执行westos.sh脚本:
在这里插入图片描述
.westos.sh直接在当前环境中运行shell的指令不开启新的shell:
在这里插入图片描述
source westos.sh直接在当前环境中运行shell中的指令不开启新的shell
在这里插入图片描述
当文本有可执行权限时:

使用绝对路径:在这里插入图片描述
使用相对路径:
在这里插入图片描述
有无可执行权限的区别:
实验环境的搭建:
在这里插入图片描述
无可执行权限时:
在这里插入图片描述
有可执行权限时:
在这里插入图片描述
可以看到,脚本运行时是在当前shell中再开了一个shell环境运行cat命令。

如何对脚本进行调试:

1)在运行脚本时加上 ‘-x’,表示运行脚本时有运行输出。
2)在脚本中再输入cat命令,再去运行脚本,此时脚本运行后会停止在当前的shell中,也没有其他输出。
3)若在其他更复杂的脚本运行时,遇到这种情况,就可以使用-x,查看详细输出;输出内容中,带有‘+’的表示脚本中运行的指令,而不带‘+’的表示脚本中命令运行的输出结果,此时就可以很快找出脚本停止的原因。

搭建实验环境:
在这里插入图片描述
可知由于脚本中写入cat命令的格式错误,运行脚本会一直处于运行状态,我们可以在运行脚本时使用-x 参数显示脚本运行过程,通过显示的信息来调试脚本,显示的信息中+表示运行的指令,不带+表示指令运行的结果,可以看到脚本在执行cat命令时出错
在这里插入图片描述
使用sh -x命令调试:
在这里插入图片描述
练习1.shell脚本: host_messages.sh显示当前主机的名称及ip登陆当前主机的用户
在这里插入图片描述

2)编写脚本clear_log.sh,执行此脚本后可以清空日志
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值