练习1

  1. 编写脚本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"
    
  2. 编写脚本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
    
  3. 编写脚本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
    
  4. 编写脚本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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,064评论 5 466
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,606评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,011评论 0 328
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,550评论 1 269
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,465评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 47,919评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,428评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,075评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,208评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,185评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,191评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,914评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,482评论 3 302
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,585评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,825评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,194评论 2 344
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,703评论 2 339