shell脚本基础

一、编写脚本的基本流程

1.shell脚本语言:帮助管理员实现批量化完成任务,结合计划任务实现自动化运维

2.编写脚本的流程:
a.创建目录,集中存放脚本文件
b.编写脚本内容

vi 脚本名.sh		##编辑脚本文件
  #!/bin/bash		##声明解释器
  #注释内容		##可以注释些信息,方便后续查看
  命令及控制语句		##脚本的核心内容
:wq			##保存文件

c.赋予脚本文件执行权限:chmod +x 文件
d.运行脚本

3.脚本的声明:声明使用哪种解释器,cat /etc/shells文件中的所有解释器都可以使用,解释器可安装

4.执行脚本的方式:
a. 路径执行(必须有执行权限)
b. source 脚本的绝对路径或相对路径(不需要执行权限);
c. sh -x 脚本的路径(不需要执行权限),并且会显示命令和输出结果;

二、脚本的基础知识

  1. 重定向:改变了标准的输入输出状态

:重定向输出到某个位置,替换原有文件的所有内容

:重定向追加输出到某个位置,在原有文件的末尾添加内容
<:重定向输入某个位置的文件
2>:重定向错误输出
2>>:重定向错误追加输出到文件的末尾
&>:混合重定向输出,正确错误的输出结果都会输出
1,2>:同上

2.管道符:将|前的命令的输出结果作为管道|后的命令的输入

3.echo命令:返回结果并显示
语法:echo [选项] “需要返回的值”
选项: 选项-e 若出现特殊字符则不将其转义,当普通字符对待
在返回值中\n 代表强制换行、\t代表制表符
内容中的选项:“内容\t内容” 插入tab
“内容\n内容” 强制换行

yum仓库脚本

1.卸载光盘 umount /dev/sr0
2.判断是否有目录/media/cdrom [ -d /media/cdrom] || mkdir -p /media/cdrom
3.挂载光盘 mount /dev/sr0 /media/cdrom
4.判断上一步是否成功 在这里插入图片描述

5.判断是否有目录/etc/yum.repos.d [ -d /etc/yum.repos.d ] || mkdir -p /etc/yum.repos.d
6.进入cd /etc/yum.repos.d &&
7.移动 mv * /tmp
8.输入重定向 cat > /etc/yum.repos.d/local.repo <<FOF
9.编写
在这里插入图片描述

三、脚本中的变量的应用

1.概述:变量是一个筐,筐里装的是变量的值,只需要将筐带走,那么值也就随之带走,值为可变

2.优点:简化输入,使脚本内容更加清晰,提高脚本的适用性

3.分类:自定义变量、环境变量、位置变量、预定义变量

4.自定义变量的定义:
a.定义变量:变量名=变量值
b.查看变量:echo 变 量 名 c . 使 用 变 量 : 在 命 令 中 直 接 使 用 ( 变量名 c.使用变量:在命令中直接使用 ( c.使使变量名)
d.取消变量:unset 变量名
e.变量的作用范围:
局部变量:变量名=变量值,此种变量只能在当前bash中有效
全局变量:export 变量名=变量值,此种变量在当前bash和当前子bash中有效
注:可用 bash命令开启当前进程的子进程bash,exit退回到父bash进程
f.变量值中使用的括号:
“”:弱引用,会将双引号内的特殊符号与命令一起执行,例:A=“ls -ld”
‘’:强引用,会将单引号内的KaTeX parse error: Expected 'EOF', got '\等' at position 4: 、"、\̲等̲特殊符号失效,例:B="A /etc/ ",B=’ A / e t c / ′ ‘ ‘ : 在 定 义 变 量 时 , 引 用 命 令 , 在 值 中 引 用 变 量 等 同 于 A /etc/&#x27; ``:在定义变量时,引用命令,在值中引用变量等同于 A/etc/

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值