shell脚本的学习
shell脚本(需要解释器解释) 系统堆积的命令、特定的语法+系统的命令--(.sh文件)
为什么学shell:
shell脚本能做什么:
作用:简化操作步骤,提高效率,减少人为干预,减少系统故障。
1.自动化的完成基础配置,自动化安装程序,自动化调整配置文件
(系统初始化操作,系统更新,内核调整,网络,时区,ssh优化)
2.自动化定期备份恢复程序
3.自动化信息的采集
就是将一系列的命令组合在一个.sh文件中,用于自动化。
自动化扩容/缩容:监控服务器,如果发现cpu持续80%+触发动作(脚本)
脚本:调用aqi开通云主机->初始化环境->加入集群->对外提供
/**. 权限分为三种, 读(r = 4) 写(w = 2) 执行(x = 1) chmod 755 第一次数字代表文件所有者的权限
//第二个数字代表与文件所有者同属一个用户组的其他用户的权限,第三个数字代表其他用户组的权限。
每个程序都有自己对应的解释器, shell的有,
bash 不需要添加执行权限,使用解释器直接解释
./ 需要添加执行权限(chmod +x)
#!/bin/bash 也要添加执行权限,为了系统方便识别
export 变量名。 可以把一个变量提升为全局变量
$0代表shell本身的文件名、$1234。。。。代表第几个参数
$* ¥@ 都代表命令行中所有的参数 $*把参数看成一个整体, $@把每个参数区分对待
$# 代表参数个数。
$? 最后一个执行命令的返回状态,如果这个变量的值为0,证明上一个命令正确执行,如果变量的值为非0,则证明上一个命令执行不正确。
expr 做运算的话必须有空格
basename 取文件名, dirname 取文件的路径
dirname + basename 就是文件的绝对路径。
shell工具:
cut命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段输出。
-d表示切割符,-f表示切哪一列 cut -d " " -f 1 cut 文件名。表示切割符为空格,切第一行。
sed命令 利用sed逐行读取文件,并对本贱进行增删改查 sed 选项 ‘指令’ 文件
如 sed "s/wo/ni/g" sed.txt s代表替换。g代表全局替换
加上 -i 是对文件进行修改,不加则是预览,并没有实际修改。 d是删除。p是打印。

浙公网安备 33010602011771号