shell脚本的基础常识及yum仓库的自动搭建
Posted super-mark
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本的基础常识及yum仓库的自动搭建相关的知识,希望对你有一定的参考价值。
Shell脚本开发的规范和习惯
1.开头指定脚本解释器
2.开头加版本版权等信息,可配置~/.vimrc文件自动添加
3.脚本不要用中文注释,尽量用英文注释
4.脚本以.sh为扩展名
5.放在统一的目录
6.代码书写优秀习惯
a.成对的内容一次性写出来,防止遗漏,如[],‘‘,""等
b,[]两端要有空格,先输入[]退格,输入2个空格,再退格写。
c, 流程控制语句一次书写完,再添加内容。
- if 条件
- then
- 内容
- fi
d,通过缩进让代码易读
f,脚本中的引号都是英文状态下的引号,其他字符也是英文状态。
好的习惯可以让我们避免很多不必要的麻烦,提高工作效率。
Shell环境变量
1.什么是变量
变量就是用一个固定的字符串(也可能是字符数字等的组合),替代更多更复杂的内容,这个内容里可能还会包含变量和路径,字符串等其他内容。变量的定义是存在内存中。
- x=1
- y=2
2.变量类型
变量分为两类:
1.环境变量(也可称为全局变量);可以在创建他们的Shell及派生出来的子shell中使用。环境变量又可以分为自定义环境变量和bash内置的环境变量。
2.局部变量(普通变量):只能在创建他们的shell函数或shell脚本中使用,还记得前面的$user?我们创建的一般都是普通变量。
2.1 环境变量
- 环境变量用于定义Shell的运行环境,保证Shell命令的正确执行,Shell通过环境变量来确定登录用户名,命令路径,终端类型,登录目录等,所有的环境变量都是全局变量,可用于所有子进程中,包括编辑器,shell脚本和各类应用。但crond计划任务除外,还需要重新定义环境变量。
- 环境变量可以在命令行中设置,但用户退出时这些变量值也会丢失,因此最好在用户家目录下的.bash_profile文件中或全局配置/etc/bashrc,/etc/profile文件或者/etc/profile.d/目录中定义。将环境变量放入profile文件中,每次用户登录时这些变量值都将被初始化。
- 通常,所有环境变量均为大写。环境变量应用于用户进程前,都应该用export命令导出。例如:export chensiqi=1
- 有一些环境变量,比如HOME,PATH,SHELL,UID,USER等,在用户登录之前就已经被/bin/login程序设置好了。通常环境变量定义并保存在用户家目录下的.bash_profile或/etc/profile文件中。
yum仓库的自动搭建
一、创建yum仓库目录及文件。
mkdir /server/scripts
cd /server/scripts
touch yum.sh
vim yum.sh
二、用vim编辑yum仓库配置文档。(内容如下)
#!/bin/bash
umount /dev/sr0
[ -d /media/cdrom ] || mkdir -p /media/cdrom
mount /dev/sr0 /media/cdrom
if [ $? -ne 0 ];then
(Tab键)echo "请查看关盘是否插入"
(Tab键)exit
fi
[ -d /etc/yum.repos.d ] || mkdir -p /etc/yum.repos.d
cd /etc/yum.repos.d &&
mv * /tmp/
cat > /etc/yum.repos.d/local.repo <<FOF
[local]
name=local
baseurl=file:///media/cdrom
gpgcheck=0
enabled=1
FOF
yum -y clean all && echo "yum clean"
yum makecache && echo "huan cun success"
三、退出并保存文档(:wq)搭建完毕。
以上是关于shell脚本的基础常识及yum仓库的自动搭建的主要内容,如果未能解决你的问题,请参考以下文章