N26-第八周作业-邢岩

马哥门徒-N26-邢岩


1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态;

     在线的主机使用绿色显示;

     不在线的主机使用红色显示;


#!/bin/bash

# Author: jeque
# Description: pingtest

for ((i=1;i<255;i++));do
  ping -w 1 -c 1 172.16.250.$i &> /dev.null
  if [ $? -eq 0 ];then
    echo -e “\e[1;32m 172.16.250.$i \e[0m”
  else
    echo -e “\e[1;31m 172.16.250.$i \e[0m”
  fi
done

N26-第八周作业-邢岩


2、如何给网络接口配置多个地址,有哪些方式?


   1) ip addr add IFADDR dev IFACE

          例如:ip addr add 192.168.10.99 dev eth0

   2) ifconfig IFACE_LABEL IPADDR/NETMASK

          例如:ifconfig eth0:0 192.168.1.0/24

    3) /etc/sysconfig/network-scripts/ifcfg-IFACE

例如:

N26-第八周作业-邢岩


3、写一个脚本,完成以下功能

   (1) 假设某目录(/etc/rc.d/rc3.d/)下分别有K开头的文件和S开头的文件若干;

   (2) 显示所有以K开头的文件的文件名,并且给其附加一个stop字符串;

   (3) 显示所有以S开头的文件的文件名,并且给其附加一个start字符串;

   (4) 分别统计S开头和K开头的文件各有多少;


#!/bin/bash

# Author: jeque
# Description: pingtest

declare Ssum=0 Ksum=0

for i in $(ls /etc/rc.d/rc3.d); do
    if [ $( echo “$i” | cut -c 1-1) == “S” ];then
       echo “start_$i”
       let Ssum++
    elif [ $( echo “$i” | cut -c 1-1) == “K” ];then
       echo “stop_$i”
       let Ksum++
    fi
done
echo -e “K head file is $Ksum.\nS head file is $Ssum.”

N26-第八周作业-邢岩


4、写一个脚本,完成以下功能

   (1) 脚本能接受用户名作为参数;

   (2) 计算这些用户的ID之和;


#!/bin/bash

# Author: jeque
# Description: userid sum

while read line;do

    userid=$(echo $line | cut -d: -f3)

    let sum+=$userid

done < /etc/passwd

echo “User id sum is:$sum.”

N26-第八周作业-邢岩


5、写一个脚本

   (1) 传递一些目录给此脚本;

   (2) 逐个显示每个目录的所有一级文件或子目录的内容类型;

   (3) 统计一共有多少个目录;且一共显示了多少个文件的内容类型;


#!/bin/bash

# Author: jeque
# Description:

declare -i sumd=0
declare -i sumf=0
if [ $# -lt 1 ];then
   echo “usage $0 arg1 arg2 …”
   exit 1
fi

for i in $*; do
     [ ! -d $i ] && continue
     file $i/*
     dirtype=$(file $i/* | grep -c “directory$”)
     filetype=$(file $i/* | awk ‘{print $0}’ | sort | uniq | wc -l)
     let sumd+=dirtype
     let sumf+=filetype
done

echo “dir:$sumd,file:$sumf.”

N26-第八周作业-邢岩

N26-第八周作业-邢岩


6、写一个脚本

  通过命令行传递一个参数给脚本,参数为用户名;

  如果用户的id号大于等于500,则显示此用户为普通用户;


#!/bin/bash

# Author:jeque
# Description: username type
username=$1
if id “$username” &> /dev/null;then
    userid=$(grep “^$username\>” /etc/passwd |cut -d: -f3)

    if [ $userid -ge 500 ];then
echo “$username is common user.”
   else
        echo “$username is sys user.”
   fi
else
    echo “$username not exists!”
    exit 2
fi

N26-第八周作业-邢岩

7、写一脚本,用ping命令测试172.16.250.20-172.16.250.100以内有哪些主机在线,将在线的显示出来;


#!/bin/bash

# Author:jeque
# Description:pingtest
for i in {20..100};do
    if ping -c 1 172.16.250.$i &> /dev/null;then
         echo “172.16.250.$i is UP”
    else
        continue
    fi
done

N26-第八周作业-邢岩


8、打印九九乘法表;


#!/bin/bash

# Author:jeque
# Description: multi table
for j in {1..9};do
    for i in $(seq 1 $j);do
        echo -n -e “${i}X${j}=$[${i}*${j}]\t “
    done
echo
done

N26-第八周作业-邢岩


今天就到这里了,bye!N26-第八周作业-邢岩

原创文章,作者:jeque,如若转载,请注明出处:http://www.178linux.com/70505

(0)
jequejeque
上一篇 2017-03-23 20:05
下一篇 2017-03-25 13:12

相关推荐

  • 那些年我们一起追过的缓存写法(三)

    原文出处: 蘑菇先生    上次我们说了多级缓存,本章详细介绍下内存缓存该如何设计。 一:分析设计 假设有个项目有一定并发量,要用到多级缓存,如下: 在实际设计一个内存缓存前,我们需要考虑的问题: 1:内存与Redis的数据置换,尽可能在内存中提高数据命中率,减少下一级的压力。 2:内存容量的限制,需要控制缓存数量。 3:热点数…

    Linux干货 2015-03-04
  • 磁盘配额、软RAID使用、LVM管理

    一.磁盘配额的相关知识 (1)工作原理及方式         *以文件系统为单位启动         *以特定的用户或组为对象       …

    Linux干货 2016-09-06
  • shell脚本编程的执行语句

    顺序执行     从上到下逐条执行命令,执行完所有命令及退出。 选择执行     (1)&&,||     &&:代表and,&&左侧为真右侧则执行     ||:代表or…

    Linux干货 2016-08-24
  • 软件包管理工具—yum命令总结

    描述: YUM: Yellowdog Update Modifier, rpm的前端程序,用来解决软件包相关依赖性,可以在多个库之间定位软件包,实现查询、安装、升级、删除等功能 说明: yum repository: yum repo,存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下) 文件服务器: ftp:// http://…

    Linux干货 2016-08-29
  • 一波三折的尝试,windows下通过VMware虚拟机安装windows操作系统

    已经尝试过多次VMware下linux系统的安装,均安装正常,同样环境下安装windows系统会发生什么情况,首先选择的是windows10系统,然而在安装过程中,iso镜像光盘一直无法挂载,在经历更换iso镜像,更换另一台电脑之后,初步判定问题为win10系统iso镜像顺坏,因为同样环境用win7的镜像却能正常挂载,且正常启动到安装系统界面…..
    但是,问题真的会是这样吗?

    2018-03-27
  • linux 入门基础

    Linux概念部分: 1.CPU是Central Processing Unit的缩写,即中央处理器。由控制器和运算器组成,是计算机系统种最要组成部分。2.内存是介于CPU和外部存储之间,是CPU对外部存储中成粗与数据进行高速运算时存放程序指令、数据和中间结果的临时场所,它飞物理实质就是一组具备数据输入输出和数据存储功能的高速集成电路。3.内存是CPU能直接…

    Linux干货 2017-09-03

评论列表(1条)

  • 马哥教育
    马哥教育 2017-03-30 14:25

    测试了部分代码,功能都没有问题,但作为博客来讲,代码可读性也是非常重要的,再接再励。