第九周作業

第九周作業

第九周作業

1、寫一個腳本,判斷當前系統上所有用戶的shell是否為可登錄shell(即用戶的shell不是/sbin/nologin);分別這兩類用戶的個數;通過字符串比較來實現;

#!/bin/bash

LOGIN_USER=0

NOLOGIN_USER=0

for SHELLUSER in $(cat /etc/passwd | cut -d : -f 7);do

if [ $SHELLUSER == “/sbin/nologin” ];then

let NOLOGIN_USER++

else

let LOGIN_USER++

fi

done

 

echo “login shell = $LOGIN_USER , nologin shell =$NOLOGIN_USER”

2、寫一個腳本 ? ? (1) 獲取當前主機的主機名,保存于hostname變量中; ? ? (2) 判斷此變量的值是否為localhost,如果是,則將當前主機名修改為www.magedu.com; ? ? (3) 否則,則顯示當前主機名;

#!/bin/bash

hostname=$(echo $HOSTNAME)

if [ “$hostname” == “localhost” ]; then

hostname “www.magedu.com”

else

echo $HOSTNAME

fi

 

3、寫一個腳本,完成如下功能 ? ? (1) 傳遞一個磁盤設備文件路徑給腳本,判斷此設備是否存在; ? ? (2) 如果存在,則顯示此設備上的所有分區信息;

#!/bin/bash

if [[ “$1” =~ /dev/[hs]d* ]];then

if ls /dev/[hs]d* | grep “$1” &> /dev/null ; then

fdisk -l $1

else

echo “no this partitions”

exit 2

fi

else

echo “wrong path”

fi

4、寫一個腳本,完成如下功能 ? ?腳本能夠接受一個參數; ? ?(1) 如果參數1為quit,則顯示退出腳本,并執行正常退出; ? ?(2) 如果參數1為yes,則顯示繼續執行腳本; ? ?(3) 否則,參數1為其它任意值,均執行非正常退出;

#!/bin/bash

read -p “Please give a parameter(yes or quit)” -t 5 NAME

if [ -z $NAME ];then

echo “need a parameter”

exit 2

elif [ $NAME == yes ]; then

echo “continue scripting”

elif [ $NAME == quit ]; then

echo “Normal exit”

exit 0

else

echo “wrong paramter”

exit 2

fi

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

NAME=/backups/etc-20160613.tar

read -p “chose a compression tool(gzip/bzip2/xz)” -t 5 TOOL

cd /

mkdir backups &> /dev/null

if [ $TOOL == gzip ];then

tar -zcf $NAME.gz etc

elif [ $TOOL == bzip2 ];then

tar -jcf $NAME.bz2 etc

elif [ $TOOL == xz ];then

tar -Jcf $NAME.xz etc

else

echo “wrong compression tool”

fi

6、寫一個腳本,接受一個路徑參數: ? ?(1) 如果為普通文件,則說明其可被正常訪問; ? ?(2) 如果是目錄文件,則說明可對其使用cd命令; ? ?(3) 如果為符號鏈接文件,則說明是個訪問路徑; ? ?(4) 其它為無法判斷;

#!/bin/bash

read -p “please give a path to (file|dir|ln)”? NAME

if [[ -f $NAME ]];then

echo “this is a file,you can access”

elif [[ -d $NAME ]];then

echo “this is a Directory file,you can cd”

elif [[ -L $NAME ]];then

echo “this is a path to file”

else

echo “cannot judge”

fi

7、寫一個腳本,取得當前主機的主機名,判斷 ? ?(1) 如果主機名為空或為localhost,或為”(none)”,則將其命名為mail.magedu.com; ? ?(2) 否則,顯示現有的主機名即可;

#!/bin/bash

HOSTNAME=$(hostname)

if [ $HOSTNAME == “localhost” -o “(none)” ];then

hostname mail.magedu.com

else

echo “hostname is $HOSTNAME”

fi

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/88332

(1)
N27_yangjifengN27_yangjifeng
上一篇 2017-11-13 10:51
下一篇 2017-11-13 10:54

相關推薦

  • linux 網絡管理

    1、ifconfig命令格式: ifconfig[interface] 查看IP ifconfig-a 查看全部網卡信息 ifconfigIFACE [up|down] 網卡開啟關閉 ifconfigIFACE IP/netmask [up] ifconfigIFACE IP netmask NETMASK 命令立即生效,不能永久保存  &nbsp…

    Linux干貨 2017-08-20
  • http協議(2.2&2.4)RPM搭建配置

    http協議(2.2&2.4)RPM搭建配置 httpd的程序環境: 主程序文件:/usr/sbin/httpd CentOS6系列(默認httpd2.2) 1)配置文件: /etc/httpd/conf/httpd.conf、  /etc/httpd/conf.d/*.conf 2)服務腳本: /etc/rc.d/init.d/…

    Linux干貨 2016-10-17
  • 基于虛擬用戶控制的ftp服務

    FTP作為最常見的文件共享服務,可提供文件的上傳,下載等服務;其用戶可分為三類: 匿名用戶:即不需要用戶賬號與密碼即可登錄FTP服務器,此時登錄用戶將會被映射為系統上的ftp用戶。 系統用戶:即用FTP服務器上的用戶賬號與密碼登錄FTP服務器。此種方法雖然在一定程度上對登錄做出了限制,但由于系統賬號的相關權限,則增大了FTP服務器的系統風險; 虛擬用戶:用戶…

    Linux干貨 2016-10-23
  • 文件的查找工具find

    有的時候我們需要快速查找一些文件,但是我們卻不知道這個文件在哪的時候,就急切的需要一個工具來幫助我們,這時候find就誕生了。Find能實現精確查找,雖然速度略慢,但是并不妨礙我們使用,下面就介紹一下find的使用方法。(一) 基于時間戳的查找          假如需要查看七天前的文件,但是總不能一一的去看…

    2017-08-13
  • find命令之德.摩根定律及perm條件詳解

    (1)德.摩根定律        !A -a !B=!( A -o B )        !A -o !B=!( A -a B )        使用條件:條件中存在“非”、“與”…

    Linux干貨 2016-08-18
  • nginx+varnish+httpd小試牛刀

    簡介: Varnish 是一款高性能且開源的反向代理服務器和 HTTP 加速器,其采用全新的軟件體系機構,和現在的硬件體系緊密配合,與傳統的 squid 相比,varnish 具有性能更高、速度更快、管理更加方便等諸多優點; 此次試驗的目的是讓Nginx做前端訪問負載均衡,varnish代理后端的web服務器,并緩存結果 1.準備機器,做好時間同步,主機名解…

    Linux干貨 2017-06-27

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-12-02 09:08

    寫的很好,腳本只能多聯系,之后就會了。

欧美性久久久久