0
点赞
收藏
分享

微信扫一扫

shell脚本

seuleyang 2022-02-10 阅读 67

shell使用方式:

交互式           —— 命令行

人工干预、智能化程度高

逐条解释执行、效率低

非交互式        —— 脚本

需要提前设计、智能化难度大

批量执行、效率高

方便在后台静悄悄地运行

[root@svr7 ~]# cat /etc/shells   //查看所有解释器
[root@svr7 ~]# sh   //切换成sh解释器
sh-4.2# ls    //利用sh解释器输入命令
sh-4.2#exit   //退出sh解释器
[root@svr7 ~]#yum -y install ksh   //安装新解释器
[root@svr7 ~]#ksh   //进入新解释器

 

shell脚本编写规范
1,声明解释器
#!/bin/bash
2,编写注释
#可以描述脚本功能、变量作用等信息
3,执行指令
ls
cd
。。。
。。。

 

 

 

#!/bin/bash
#搭建yum软件仓库
mkdir /abc
mount /dev/cdrom /abc
rm -rf /etc/yum.repos.d/*.repo
echo "[abc]
name=abcabc
baseurl=file:///abc
enabled=1
gpgcheck=0" > /etc/yum.repos.d/abc.repo

 

 

#!/bin/bash
#搭建网站
yum -y install httpd
echo "web-test~~" > /var/www/html/index.html
systemctl restart httpd
#!/bin/bash
yum -y install vsftpd &> /dev/null   //将不需要的信息扔黑洞
systemctl restart vsftpd
systemctl enable vsftpd

 变量的种类:

 

#!/bin/bash
echo $1
echo $2
echo $3
echo $*
echo $#
echo $$
echo $?

编写脚本: 创建用户tom,设置密码为123456

 

 

 

#!/bin/bash
read -p "请输入用户名: " u
useradd $u
read -p "请输入密码: " n
echo $n | passwd --stdin $u

再次改良脚本:
#!/bin/bash
read  -p  "请输入用户名"  u
useradd  $u
stty  -echo
read  -p  "请输入密码"  n
stty  echo
echo  "$n" | passwd  --stdin  $u

 

3,使用export发布全局变量
局部变量 仅仅在当前解释器进程中使用的变量
全局变量 解释器产生的子进程中也可以使用的变量
a=10   //创建变量
export  a   //将已有变量发布为全局效果
export  b=20   //创建变量的同时发布为全局效果
export  -n  b   //将全局变量恢复为局部变量
注意,测试时要在父进程创建变量,然后可以执行bash进入
子进程测试效果,如果要返回父进程要执行exit指令
举报

相关推荐

0 条评论