Linux Sysadmin–part3

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

#!/bin/bash

for i in `cut -d’:’ -f7 /etc/passwd`;do

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

let x++

else

let y++

fi

done

echo “nologin user number: $x”

echo “login user number: $y”

2、寫一個腳本

(1) 獲取當前主機的主機名,保存于hostname變量中;

(2) 判斷此變量的值是否為localhost,如果是,則將當前主機名修改為www.magedu.com;

(3) 否則,則顯示當前主機名;

#!/bin/bash

hostname=$(hostname)

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

hostname www.magedu.com

else

echo “$hostname”

fi

3、寫一個腳本,完成如下功能

(1) 傳遞一個磁盤設備文件路徑給腳本,判斷此設備是否存在;

(2) 如果存在,則顯示此設備上的所有分區信息

#!/bin/bash

if [ -b $1 ];then

fdisk -l $1

else

echo “$1 is not Block device file”

fi

4、寫一個腳本,完成如下功能

腳本能夠接受一個參數;

(1) 如果參數1為quit,則顯示退出腳本,并執行正常退出;

(2) 如果參數1為yes,則顯示繼續執行腳本;

(3) 否則,參數1為其它任意值,均執行非正常退出

#!/bin/bash

while true;do

read -p “please input yes|quit|other character string: ” word

case $word in

quit)

exit 0

;;

yes)

continue

;;

*)

echo “Wrong”

exit 2

;;

esac

done

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

#description:

#date:

#Author:

mkdir -pv /backups

while true;do

read -p “please input gzip|bzip2|xz character string: ” word

case $word in

gzip)

tar -zcPf /backups/etc-`date +%Y%m%d`.tar.gz /etc

;;

bzip2)

tar -jcPf /backups/etc-`date +%Y%m%d`.tar.bz2 /etc

;;

xz)

tar -JcPf /backups/etc-`date +%Y%m%d`.tar.xz /etc

;;

*)

echo “Wrong”

exit 2

;;

esac

done

###當帶-P 參數時,壓縮包中的路徑使用絕對路徑方式,而沒有-P 參數會自動刪除前綴的根符號,也就是本文開頭的提示信息###

6、寫一個腳本,接受一個路徑參數:

(1) 如果為普通文件,則說明其可被正常訪問;

(2) 如果是目錄文件,則說明可對其使用cd命令;

(3) 如果為符號鏈接文件,則說明是個訪問路徑;

(4) 其它為無法判斷;

#!/bin/bash

if [ -f $1 ];then

echo “$1 is regular file”

elif [ -d $i ];then

echo “$1 is directory file and can use cd command”

elif [ -h $i ];then

echo “$1 is symbolic links file ”

else

echo “cannot tell”

fi

7、寫一個腳本,取得當前主機的主機名,判斷

(1) 如果主機名為空或為localhost,或為”(none)”,則將其命名為mail.magedu.com

#!/bin/bash

#description:

#date:

#Author:

hostname=$(hostname)

if [ -z $hostname -o $hostname == “localhost” -o $hostname == “none” ];then

hostname mail.magedu.com

fi

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

(0)
N27_ronnyN27_ronny
上一篇 2017-09-19 16:17
下一篇 2017-09-20 00:03

相關推薦

  • 網絡25期第一周作業

    一、計算機硬件的組成及功能 1、控制器       控制器負責從存儲器中取出指令,并對指令進行譯碼??刂破髦饕怯芍噶罴拇嫫?、譯碼器程序計數器、操作控制器等組成。 2、運算器      運算器又稱算數邏輯單元,是計算機進行算術計算和邏輯計算的部件。 3、存儲器 &nbs…

    Linux干貨 2016-12-06
  • 網絡實驗

    一、子網劃分 1、某公司申請到一個C 類IP 地址,但要連接6 個的子公司,最大的一個子公司有26 臺計算機,每個子公司在一個網段中,則子網掩碼應設為? 使用27位子網掩碼一共可以分出8個子網 每段32個地址;每個子網有30個可用地址 0-31 32-63 64-95 96-127 128-159 160-191 192-223 224-255 2、一家集團…

    Linux干貨 2016-09-09
  • Linux Basics

    計算機的組成及其功能:             CPU:運算器、控制器、寄存器、緩存             存儲器:內存,RAM(Random Access Memory)   …

    Linux干貨 2016-09-17
  • 分布式系統介紹及MogileFS安裝、基本配置

    分布式系統介紹及MogileFS安裝、基本配置 分布式 MogileFS 前言: 什么是分布式? 分布式存在的意義? 分布式的難點及CAP、BASE、2PC、X/Open XA介紹 分布式存儲和分布式文件系統: MogileFS實現原理: MogileFS編譯安裝和配置 總結 前言: 不知不覺中我們就進入大數據時代, 什么是大數據? 什么是分布式?…

    Linux干貨 2016-05-04
  • 啟動和內核管理

    一、Linux組成     Linux: kernel+rootfs         kernel: 進程管理、內存管理、網絡管理、驅動程序、文件系統、安全功能       &nb…

    Linux干貨 2016-09-18
  • 【26期】Linux第五周學習小總結

        第五周的學習內容很豐富, 從查找到壓縮打包,到軟件包的管理,其中尤其是以壓縮的內容最為豐富,而且龐大的選項讓人絕望,那我今天就總結了一下壓縮的一些東西,和大家一起分享。     為什么會產生壓縮工具呢?因為我們的現在的很多文件會利用到的東西很多,電腦的讀存速度也越來越快,一些大的文件在傳輸和使用上就會很麻煩,雖…

    2017-08-12
欧美性久久久久