博观而约取,厚积而薄发。这篇文章主要讲述Shell编程及自动化运维预定义变量相关的知识,希望能为你提供帮助。
预定义变量
$0 脚本名/程序名
$* 所有的参数
$# 参数的个数
$? 上一个程序的返回值(0是成功,非零失败)
$$ 程序的PID
示例
定义脚本
[root@localhost ~]# vim avg.sh
#!/bin/bash
echo "($1+$2)/2" |bc
echo "该程序名为$0"
echo "该程序使用了 $# 个参数"
echo "该程序的参数如下: $*"
调用脚本
[root@localhost~]# ./avg.sh 60 50
55
该程序名为./avg.sh
该程序使用了2 个参数
该程序的参数如下: 60 50
总结
- 这两类变量,在设计系统时就已经定义好了。
- 需要使用时,直接调用即可。
练习
自动创建用户并设置初始密码的脚本
#!/bin/bash
read -p "please input username: " name
useradd $name
echo "123456" | passwd --stdin $name & > /dev/null
echo "$name create finished,the password is 123456"
【Shell编程及自动化运维预定义变量】
编写脚本,配置本地yum源
#!/bin/bash
mount /dev/cdrom /mnt & > /dev/null
rm -rf /etc/yum.repos.d/*
cat < < EOF > /etc/yum.repos.d/yum.repo
[local]
name=localyum
baseurl=file:///mnt
enabled=1
gpgcheck=0
EOF
[root@localhost ~]#yum repolist all
推荐阅读
- netty系列之:在netty中使用TCP协议请求DNS服务器
- Shell(if语法的使用)
- spring用到的设计模式
- 系统之家win7纯净版iso系统蓝屏代码0x000000001e的排查方案
- 让win7 32位系统笔记本续航时间更长的设置妙招
- 最新xp系统之家教你怎样维修U盘接口
- win7系统之家教你如何处理Win7 任务栏无法添加、锁定程序的问题
- 中关村系统之家浅析Windows7系统4个版本的异同点
- 系统之家win7安装虚拟光驱后物理光驱无法运用的处理步骤