-
编写脚本systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小
1.1实现基本功能[root@centos7 ~]# vim systeminfo.sh #!/bin/bash echo -e "Hostname is `hostname`" echo -e "IP ddress is `ifconfig|grep -oE '[0-9.]{7,15}'|head -1`" echo -e "OS Version is `cat /etc/redhat-release`" echo -e "kernel version is `uname -r`" echo -e "CPU type is `lscpu|grep 'Model name'|cut -d: -f2|tr -s ' '`" echo -e "Memory size is `free -h|grep Mem|tr -s ' '|cut -d' ' -f2`" echo -e "Disk space is `lsblk|grep disk|tr -s ' '|cut -d' ' -f4`"
1.2将对应输出添加颜色
[root@centos7 ~]# cp systeminfo.sh systeminfo1.sh [root@centos7 ~]# vim systeminfo1.sh #!/bin/bash echo -e "Hostname is \033[31m`hostname`\033[0m" echo -e "IP ddress is \033[31m`ifconfig|grep -oE '[0-9.]{7,15}'|head -1`\033[0m" echo -e "OS Version is \033[31m`cat /etc/redhat-release`\033[0m" echo -e "kernel version is \033[31m`uname -r`\033[0m" echo -e "CPU type is \033[31m`lscpu|grep 'Model name'|cut -d: -f2|tr -s ' '`\033[0m" echo -e "Memory size is \033[31m`free -h|grep Mem|tr -s ' '|cut -d' ' -f2`\033[0m" echo -e "Disk space is \033[31m`lsblk|grep disk|tr -s ' '|cut -d' ' -f4`\033[0m"
1.3将设色选项设置为变量,方便修改颜色
[root@centos7 ~]# cp systeminfo1.sh systeminfo2.sh [root@centos7 ~]# vim systeminfo2.sh #!/bin/bash COLOR="\033[31m" COLOREND="\033[0m" echo -e "Hostname is $COLOR`hostname`$COLOREND" echo -e "IP ddress is $COLOR`ifconfig|grep -oE '[0-9.]{7,15}'|head -1`$COLOREND" echo -e "OS Version is $COLOR`cat /etc/redhat-release`$COLOREND" echo -e "kernel version is $COLOR`uname -r`$COLOREND" echo -e "CPU type is $COLOR`lscpu|grep 'Model name'|cut -d: -f2|tr -s ' '`$COLOREND" echo -e "Memory size is $COLOR`free -h|grep Mem|tr -s ' '|cut -d' ' -f2`$COLOREND" echo -e "Disk space is $COLOR`lsblk|grep disk|tr -s ' '|cut -d' ' -f4`$COLOREND"
1.4将颜色设定为随机
[root@centos7 ~]# vim systeminfo2.sh #!/bin/bash COLOR="\033[1;$[RANDOM%7+31]m" COLOREND="\033[0m" echo -e "Hostname is $COLOR`hostname`$COLOREND" echo -e "IP ddress is $COLOR`ifconfig|grep -oE '[0-9.]{7,15}'|head -1`$COLOREND" echo -e "OS Version is $COLOR`cat /etc/redhat-release`$COLOREND" echo -e "kernel version is $COLOR`uname -r`$COLOREND" echo -e "CPU type is $COLOR`lscpu|grep 'Model name'|cut -d: -f2|tr -s ' '`$COLOREND" echo -e "Memory size is $COLOR`free -h|grep Mem|tr -s ' '|cut -d' ' -f2`$COLOREND" echo -e "Disk space is $COLOR`lsblk|grep disk|tr -s ' '|cut -d' ' -f4`$COLOREND"
-
编写脚本backup.sh,可实现每日将/etc/目录备份到/backup/etcYYYY-mm-dd中
2.1实现基本功能[root@centos7 ~]# vim backup.sh #!/bin/bash COLOR="\033[31m" COLOREND="\033[0m" echo -e "${COLOR}Starting backup....$ENDCOLOR" sleep 3 cp -av /etc /data/etc`date +%F` echo -e "${COLOR}Backup is finished$ENDCOLOR" unset COLOR COLOREND
2.2将备份目录进一步详细,备份目录名添加上具体时间
[root@centos7 ~]# cp backup.sh backup1.sh [root@centos7 ~]# vim backup1.sh #!/bin/bash COLOR="\033[31m" COLOREND="\033[0m" echo -e "${COLOR}Starting backup....$COLOREND" sleep 3 cp -av /etc /data/etc`date +"%F_%T"` 注:这个地方%F和%T之间一定要添加下划线(_) echo -e "${COLOR}Backup is finished$COLOREND" unset COLOR COLOREND
2.3将源目录和目标路径设置为变量便于修改
[root@centos7 ~]# cp backup1.sh backup2.sh #!/bin/bash COLOR="\033[31m" COLOREND="\033[0m" SOURCE_DIR="/etc" DEST_DIR=/data/etc`date +'%F_%T'` echo -e "${COLOR}Starting backup....$COLOREND" sleep 3 cp -av $SOURCE_DIR $DEST_DIR echo -e "${COLOR}Backup is finished$COLOREND" unset COLOR COLOREND SOURCE_DIR DEST_DIR
-
编写脚本disk.sh,显示当前硬盘分区中空间利用率最大的值
3.1方法一:[root@centos7 ~]# vim disk.sh #!/bin/bash COLOR="\e[1;35m" COLOREND="\e[0m" echo -e "${ COLOR}`df|grep /dev/sda|tr -s " " %|cut -d% -f5|sort -nr|head -n1`${ COLOREND}" unset COLOR COLOREND
3.2方法二:
[root@centos7 ~]# cp disk.sh disk1.sh [root@centos7 ~]# vim disk1.sh #!/bin/bash COLOR="\e[1;35m" COLOREND="\e[0m" echo -e "${COLOR}`df|grep /dev/sda|grep -o '[0-9]\+%'|cut -d% -f1|sort -nr|head -n1`${ COLOREND}" unset COLOR COLOREND
-
编写脚本links.sh,显示正连接本主机的每个远程主机的IPv4地址和连接数,并按连接数从大到小排序
[root@centos7 ~]# vim links.sh #!/bin/bash COLOR="\e[1;35m" COLOREND="\e[0m" echo -e "${COLOR}`netstat -tan | grep 'ESTAB' | tr -s ' ' ':' | cut -d: -f6 | sort | uniq -c | sort -nr`${COLOREND}" unset COLOR COLOREND
练习1
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...