第九周作业

1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别统计这两类用户的个数;通过字符串比较来实现;

   #!/bin/bash

    echo "可登录类型有有$(awk -F: '/[^\<nologin\>]$/{login++}END{print login}' /etc/passwd)个"

    echo "不可登录类型有$(awk -F: '/\<nologin\>$/{nologin++}END{print nologin}' /etc/passwd)个"

2、写一个脚本

    (1) 获取当前主机的主机名,保存于hostname变量中;

    (2) 判断此变量的值是否为localhost,如果是,则将当前主机名修改为www.magedu.com;

    (3) 否则,则显示当前主机名;           

    #!/bin/bash

    #

    hname=`hostname`

    case $hname in

    "www.magedu.com")

            hostname;;

    *)

            hostname www.magedu.com;;

    esac

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

    (1) 传递一个磁盘设备文件路径给脚本,判断此设备是否存在;

    (2) 如果存在,则显示此设备上的所有分区信息;

        

    #!/bin/bash

    #

    if [ -b $1 ];then

            fdisk -l $1

    else

            echo "你输入的文件路径不存在"

    fi

~    

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

   脚本能够接受一个参数;

   (1) 如果参数1为quit,则显示退出脚本,并执行正常退出;

   (2) 如果参数1为yes,则显示继续执行脚本;

   (3) 否则,参数1为其它任意值,均执行非正常退出;

     

    #!/bin/bash

    #

    f_pro(){

    read -p "请输入一个参数" arg

    if [ $arg == "quit" ];then

            exit 0

    elif [ $arg == "yes" ];then

            f_pro

    fi

    }

    f_pro

5、写一个脚本,完成如下功能

   传递一个参数给脚本,此参数为gzip、bzip2或者xz三者之一;

   (1) 如果参数1的值为gzip,则使用tar和gzip归档压缩/etc目录至/backups目录中,并命名为/backups/etc-20160613.tar.gz;

   (2) 如果参数1的值为bzip2,则使用tar和bzip2归档压缩/etc目录至/backups目录中,并命名为/backups/etc-20160613.tar.bz2;

   (3) 如果参数1的值为xz,则使用tar和xz归档压缩/etc目录至/backups目录中,并命名为/backups/etc-20160613.tar.xz;

   (4) 其它任意值,则显示错误压缩工具,并执行非正常退出;

            

    #!/bin/bash

    #

    #

    if [ $# -lt 1 ];then

            echo "you need a arg"

            exit 1

    fi

    

    if [ ! -d /backups ];then

            mkdir /backups

    fi

    

    

    case $1 in

    "gzip")

            /bin/tar -zcf /backups/etc-20160613.tar.gz /etc

            ;;

    "bzip2")

            /bin/tar -jcf /backups/etc-20160613.tar.bz2 /etc

            ;;

    "xz")

            /bin/tar -Jcf /backups/etc-20160613.tar.xz /etc

            ;;

    *)

            echo "你输入的参数有误!"

            exit 1

            ;;

    esac

~     

    

6、写一个脚本,接受一个路径参数:

   (1) 如果为普通文件,则说明其可被正常访问;

   (2) 如果是目录文件,则说明可对其使用cd命令;

   (3) 如果为符号链接文件,则说明是个访问路径;

   (4) 其它为无法判断;

        

    #!/bin/bash

    #

    #

    if [ -L $1 ];then

            echo "是访问路径"

    elif [ -f $1 ];then

            echo "可以正常访问的文件"

    elif [ -d $1 ];then

            echo "可以对其使用cd命令"

    else

            echo "无法判断"

    fi

7、写一个脚本,取得当前主机的主机名,判断

   (1) 如果主机名为空或为localhost,或为"(none)",则将其命名为mail.magedu.com;

   (2) 否则,显示现有的主机名即可;

    

    #!/bin/bash

    

    hname=`hostname`

    case $hname in

    "locathost")

            /bin/hostname mail.magedu.com

            ;;

    

    "")

            /bin/hostname mail.magedu.com

            ;;

    

    "none")

            /bin/hostname mail.magedu.com

            ;;

    

    

    *)

            /bin/hostname

            ;;

    esac

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

(0)
mr.sprintmr.sprint
上一篇 2017-02-07
下一篇 2017-02-08

相关推荐

  • Linux 文本编辑器三剑客之 sed

    参考手册: http://www.gnu.org/software/sed/manual/sed.html 转载请注明:马哥教育!!

    Linux干货 2017-01-12
  • 1019作业

    1019作业 柴震 软连接 硬连接 软连接和硬链接的区别 属性与定义: 硬链接:新建的文件是已经存在的文件的一个别名,所以创建时链接数递增;而且当原文件删除时,新建的链接文件仍然可以使用,因其直接对应于数据块。 软链接:也称为符号链接。新建的链接文件以“路径”的形式来表示另一个文件,其大小为指向的路径字符串的长度,不增加或减少目标文件in…

    Linux干货 2016-10-19
  • 用户和组的相关配置文件

      用户,是计算机识别使用者身份的一种唯一使用标识。 而现实生活中为了方便人类记忆使用等,用户名往往是用便于人类识别的语言来记录的。但事实上计算机并不对人类语言敏感,所以有必要把人类语言跟机器语言对应上。于是,linux给每一个创建用户提供了一个UID。当使用用户名登录时,系统换自动对应UID来识别该用户身份。 而用户名与UID的对应信息就储存在一…

    Linux干货 2016-10-23
  • 基础指令的使用篇3 Linux版

    / /boot /bin /sbin /lib.modules /lib64 /etc/redhat-release /etc/centos-release /home/zczx /mnt /media /misc /proc/meminfo /proc/cpuinfo /proc/partition /sya /opt /tmp /usr/local/ /…

    Linux干货 2016-08-04
  • 磁盘管理进阶

    1、/etc/fstab文件     设备名 挂载点 文件系统 挂载选项 转储频率 自检次序     UUID=e79e4c9d-8d0f-4675-8945-9ec23ea77c67 /             &nb…

    Linux干货 2016-09-02
  • 高阶函数&&装饰器

    Edit 高阶函数&&装饰器 高阶函数 first class object 函数在python中是一等公民 函数也是对象,可调用的对象 函数可以作为普通比变量、参数、返回值 高阶函数 数学概念:y = g(f(x)) 在数学和计算机科学中,高阶函数应当是至少满足下面一个条件的函数 接受一个或多个函数作为参数 输出一个函数,return 函数…

    Linux干货 2017-10-24