五.Bash Shell编程基础入门实战

时间:2023-03-09 08:30:57
五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

知识回顾 运行脚本我们一般用sh 不用单独去加执行权限

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

OLDBOY=10只适用当前环境 局部变量

export OLDBOY把它设置为临时的环境变量应为已经=10了所以不用export OLDBOY=10

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

一般我们修改增加的都在/etc/profile文件里

了解跳板机的脚本放在/etec/profile.d/目录下 要求脚本要有执行权限chmod  +x  脚本名

用户开机就会运行下面的脚本

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

一般用来判断参数的个数 是否有错误

$? 判断上一个命令是否执行正确

装完软件可以查看结果是否正确

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

编写脚本

五.Bash Shell编程基础入门实战

read命令

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

read命令放入脚本

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

if 如果 或 条件

五.Bash Shell编程基础入门实战

$num1 大于 $num2 就显示出来

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

一般常用这种 greater大于  than比  less较小的 else另外  其他的

五.Bash Shell编程基础入门实战

数量不对怎么解决20后面不识别

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

-ne 不等于2  not  equal to不等于的简写

exit 退出脚本 前面的条件达不到就退出

Usage: please input 用法:请输入

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

三种情况都有了尽量用整数 小数shll不擅长 最后这个了解即可

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

1带入变量num中 再在下面的命令中执行完成显示 然后继续带入2

五.Bash Shell编程基础入门实战

for num in {001..100}
do
echo "the $num number is :$num"
done

优化linux开机启动项目,只保留以下其他都关了

五.Bash Shell编程基础入门实战

五.Bash Shell编程基础入门实战

3.服务名字加入for循环

chkconfig|egrep  "crond|sshd|rsyslog|sysstat|network" -v|awk '{print $1}'

取出想要关掉的服务 $(...)留下找到的结果

for name in $(chkconfig|egrep "crond|sshd|rsyslog|sysstat|network" -v|awk '{print $1}')
do
echo "chkconfig $name off"
done

先不直接运行命令echo查看结果

五.Bash Shell编程基础入门实战

得到的结果无误

4.执行并检查

for name in $(chkconfig|egrep "crond|sshd|rsyslog|sysstat|network" -v|awk '{print $1}')
do
   chkconfig $name off
done

五.Bash Shell编程基础入门实战

只有想要的服务在3运行模式开启了

创建用户 随机密码

for id in stu{01..10}

do

useradd $id;pass=$((RANDOM+1000000)); echo "$pass"|passwd --stdin $id;echo -e "$id\t`echo "$pass"`">>/server/scripts/user.txt

done

echo stu{01..02}|xargs -n1 useradd;
echo stu{01..02}:$((RANDOM+10000000))|xargs -n1 >/oldboy/pass.txt;
chpasswd < /oldboy/pass.txt 
五.Bash Shell编程基础入门实战

linux运行脚本调试的技巧

sh -x  脚本--会显示脚本执行的过程

过程中+或++就是说明执行的命令

没有就是显示出来的内容

总结:

1.特殊变量 位置$1 $2 $0 状态$? 其他$#表示脚本里参数的个数

2.普通变量命名规则

3.普通变量与环境变量的区别 实际就是export的作用

4.与用户有关的文件和目录~ .profile.d

5.条件表达式,判断,循环

6.优化系统启动项目

7.批量添加用户并设置随机密码