今天将对shell脚本的知识进行一个复习。
@shell基础
#shell基础就不讲了,随便搜搜博客看看几篇文章啥都知道了,直接上干货吧。
@shell命令实战
(1)/etc/profile /etc/bashrc 系统级文件
~/.bashrc ~/.bash_profile 用户级文件
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该 文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取.
(2)tee 是保存到别的文件(覆盖),tee -a是追加到别的文件
tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。
使用指令"tee"将用户输入的数据同时保存到文件"file1"和"file2"中,输入如下命令:
$ tee file1 file2 #在两个文件中复制内容
(3)#Touch tian\ yun
创建tian yun文件,带有空格的文件名。
(4)Echo带有颜色的文字输出
#echo -e “\e[1;31m This is text.\e[0m”
带有背景色的输出:
#echo -e “\e[1;41m This is text.\e[0m”
(5)测试IP可用性:
#!/bin/bash
Read -p “please input a ip:”ip
Ping $ip &>/dev/null
If [$? -eq 0];then
Echo “$ip is up”
Else:
Echo “$ip is down”
(6)export定义环境变量为全局
#vi /etc/profile
在里面加入:
export PATH="$PATH:/opt/au1200_rm/build_tools/bin"
让环境变量立即生效需要执行如下命令:
#source /etc/profile
(7)监控CPU/内存/硬盘 使用率
#!/bin/sh
free -m | awk 'NR==2{printf "Memory Usage: %s/%sMB (%.2f%%)\n", $3,$2,$3*100/$2 }'
df -h | awk '$NF=="/"{printf "Disk Usage: %d/%dGB (%s)\n", $3,$2,$5}'
top -bn1 | grep load | awk '{printf "CPU Load: %.2f\n", $(NF-2)}'
(8)Shell循环新建用户并设置密码
<