Linux第二周練習(xí)

完成一個(gè)shell腳本,腳本的作用。

  1. 運(yùn)行腳本可以顯示出本機(jī)的ip地址
  2. 如果ip地址中有3這個(gè)數(shù)字,那么就打印出當(dāng)前的系統(tǒng)時(shí)間
  3. 如果ip地址中不含3這個(gè)數(shù)字,就批量建立用戶magedu_00, magedu_01, ... magedu_100并且所有用戶同屬于magedu組
  4. 打印出/etc/passwd這個(gè)文件中可以登陸的用戶(非/usr/sbin/nologin)
  5. yum安裝nginx服務(wù),并且啟動該服務(wù)
  6. 一個(gè)腳本完成
#!/bin/bash
#
#************************************
#Author:                 zhangtang
#Date:                   2023-05-27
#FileName:               practise02.sh
#Description:            練習(xí)
#Copyright:              2023
#************************************

HTTPVERSION=1.25.0
RED="\E[1;31m"
GREEN="\E[1;32m"
END="\E[0m"


function showip(){
 echo "本機(jī)的IP:" $(hostname -I)
}
function printsystemdate(){
    ip=$(hostname -I)
    if [ $(hostname -I|grep 3) ] ;then
        echo -e  "$RED當(dāng)前時(shí)間: $(date +'%Y-%m-%d %T')$END"
    else
        autocreateuser
    fi
    
}
function autocreateuser(){
    echo -e "$RED開始批量創(chuàng)建用戶\n$END"
    groupadd mageedu -f
    for i in {0..100}; do
        if [ $i -le 9 ] ; then
            id mageedu_00$i &>/dev/null ||   useradd mageedu_00$i -g mageedu > /dev/null

        elif [  $i -ge 10 -a $i -lt 100   ] ; then
             id mageedu_0$i  &>/dev/null  ||  useradd mageedu_0$i -g mageedu > /dev/null 
        else
             id mageedu_$i &>/dev/null   ||  useradd mageedu_$i -g mageedu > /dev/null
        fi
        
    done
    echo -e "$GREEN批量創(chuàng)建用戶完成\n$END"
}
function deleteuser(){

    echo -e "$RED開始批量刪除用戶\n$END"

   grep  ^mageedu /etc/passwd|
     while read n ;do
       user=$(echo $n | cut -d ':' -f1)
        id $user &>/dev/null &&   userdel $user  -r  > /dev/null

        
     done   

     echo -e "$GREEN批量刪除用戶完成\n$END"

}
function printcanloginuser(){

 echo -e "$RED可以登錄的用戶:\n$END"
sed -nE '/[^nologin]$/p'  /etc/passwd |cut -d ':' -f1

}

function installngnix(){

    source /etc/os-release
        if [ $ID = 'ubuntu'   ] ; then
            apt -y install  gcc pcre-devel.x86_64  zlib-devel
        elif [ $ID = 'rocky'    ] ; then
         yum -y install   gcc  pcre-devel.x86_64 zlib-devel

        fi

    wget http://nginx.org/download/nginx-${HTTPVERSION}.tar.gz  -P /usr/local/src || { echo -e  "$RED下載失敗$END"; exit 1 ; }

    if [ -e /usr/local/src/nginx-${HTTPVERSION}.tar.gz  ] ; then
    cd  /usr/local/src
    tar xf nginx-${HTTPVERSION}.tar.gz
    cd /usr/local/src/nginx-${HTTPVERSION}
    ./configure --prefix=/app/nginx && make && make install
    ln -s /app/nginx/sbin/nginx /usr/local/bin/
    nginx
    echo -e "$GREEN安裝完成$END"
    echo -e "$GREEN請?jiān)L問 $(hostname -I)$END"
else
    echo -e "$RED安裝失敗$END"
fi

systemctl disable --now  firewalld
  
}
showip
deleteuser
printsystemdate
#autocreateuser
printcanloginuser
installngnix

  

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、 運(yùn)行腳本可以顯示出本機(jī)的ip地址 echo "${local_ip=`ifconfig -a|grep in...
    Linux全套學(xué)習(xí)閱讀 171評論 0 0
  • 作業(yè)要求完成一個(gè)shell腳本,腳本的作用。 運(yùn)行腳本可以顯示出本機(jī)的ip地址 如果ip地址中有3這個(gè)數(shù)字,那么就...
    Cynthia_eba2閱讀 88評論 0 0
  • 作業(yè) 完成一個(gè)shell腳本,腳本的作用。 運(yùn)行腳本可以顯示出本機(jī)的ip地址 如果ip地址中有3這個(gè)數(shù)字,那么就打...
    路邊三葉竹閱讀 154評論 0 0
  • 1、運(yùn)行腳本可以顯示出本機(jī)的ip地址 2、如果ip地址中有3這個(gè)數(shù)字,那么就打印出當(dāng)前的系統(tǒng)時(shí)間 3、如果ip地址...
    woo霖閱讀 165評論 0 0
  • 運(yùn)行腳本可以顯示出本機(jī)的ip地址 如果ip地址中有3這個(gè)數(shù)字,那么就打印出當(dāng)前的系統(tǒng)時(shí)間 如果ip地址中不含3這個(gè)...
    zzzed閱讀 238評論 0 0

友情鏈接更多精彩內(nèi)容