对系统的操作练习.note

noteId: WEB39f4b592ca2a000f12577becf7d44773 · 原始路径:/ALL/Bash 脚本编程/练习/对系统的操作练习.note · 图片:10 · 附件待处理:0

 
 
 
一、系统状态检查与资源监控:
 
1、检查磁盘分区的使用量,如果某个分区的使用量超过85%,则发警告邮件给管理员。
 
# 注意项:
awk 不能使用双引号,需要使用单引号
awk 中 NR>1 表示输出行号大于1的内容(不输出第一行 )
awk {} 中 “ ,” 逗号代表空格
while read line;    将读取到的内容存放到 $line 变量中
grep -o 表示只输出匹配到的目标,[0-9]表示使用正则表达式匹配数字,*表示一个或多个以上,与 [0-9]* 结合使用,就是匹配一个或多个以上的数字(仅匹配输出数字)
 
# 依赖软件包:
apt install -y mailutils
 
bash 01-free.sh
 
 
 
2、检查服务器的内存使用量,一但发现内存使用量超85%,则发警告邮件给管理员。
# 这个脚本跟上面差不多,没用特别需要注意的
 
 
 
 
3、删除指定目录内超过30天未被修改过的文件,但要排除某一些特定的文件(比如文件名是以.bak结尾);
 
# 注意项:
使用 find ./ -type f -mtime +30 寻找30以上未修改的文件
egrep -v ".bak$"  过滤所有除了以 .bak 结尾的内容
`` 反引号用于将反引号中的命令输出作为输入给其它命令
 
 
 
 
4、写一个终端闹钟脚本。能够在后台运行,在指定时间点持续发出声音,能够使用选项终止闹钟。(提示:使用echo -e "\a" 发声,使用kill or pkill等结束进程)
# 注意项:
getopts 用于将脚本运行时的选项解析成变量;$OPTARG 是getopts得内置变量