bash腳本編程實例

bash腳本編程實例

  • 1.寫一個腳本

    • 接受一個以上文件路徑作為參數
    • 顯示每個文件擁有的行數
    • 總結說明本次共為幾個文件統計了其行數

      #!/bin/bash
      #
      read -p "please input some paths:" paths
      if [ -z $paths ];then
       echo "There are not any paths inputting."
       exit 1
      fi
      declare -i files=0
      for i in $paths;do
       if [ ! -e $i ];then
           echo "$i is not existing."
           continue
       elif [ ! -f $i ];then
           echo "$i is not a file"
           continue
       else
           count=`wc -l $i|cut -d' ' -f2`
           echo "$i has $count lines."
           files=$[$files+1]
       fi
      done
      echo "counting lines for $files files."
  • 2.寫一個腳本

    • 傳遞兩個以上字符串當做用戶名
    • 創建這些用戶,且密碼同為用戶名
    • 總結說明共創建了幾個用戶

      #!/bin/bash
      #
      read -p "please input some usernames:" usernames
      if [ -z $usernames ];then
       echo "There are not any usernames inputting."
       exit 1
      fi
      declare -i users=0
      for i in $usernames;do
       if ! id $i &> /dev/null;then
           useradd $i
           echo $i|passwd --stdin $i
           users=$[$users+1]
       else
           echo "$i has existed."
           continue
       fi
      done
      echo "createing users for $users users."
  • 3.寫一個腳本,新建20個用戶,visitor1-visitor20,計算他們的ID之和

    #!/bin/bash
      #
      declare -i ids=0
      for i in {1..20};do
          if ! id visitor$i &> /dev/null;then
              useradd visitor$i
              echo "create a new user named visitor$i."
          else
              echo "this user named visitor$i has existed."
          fi
          id=`id -u visitor$i`
          ids=$[$ids+$id]
      done
      echo "id count for these users are $ids."

原創文章,作者:N27_xiaoni,如若轉載,請注明出處:http://www.www58058.com/84388

(0)
N27_xiaoniN27_xiaoni
上一篇 2017-08-14 09:44
下一篇 2017-08-14 09:52

相關推薦

  • LVM管理

    LVM管理

    2017-12-28
  • RPM包管理——運維必備技能之一

    軟件運行環境: API:Application Programming Interface     POSIX :Portable OS 程序源代碼 –> 預處理 –> 編譯 –> 匯編 –> 鏈接     …

    Linux干貨 2016-08-21
  • 第四周(1):課堂練習與作業

    課堂練習: 1、刪除/etc/grub.conf文件中所有以空白開頭的行行首的空白字符 [root@centos6 ~]# sed 's@^[[:space:]]\+@@' /etc/grub.conf 2、刪除/etc/fstab文件中所有以#開頭,后面至少跟一個空白字符的行的行首的#和空白字符 …

    Linux干貨 2016-08-10
  • LAMP 通過使用腳本的方式安裝并部署Discuz

    該腳本有很多輔助的部分,主要是為了讓腳本在中途運行失敗可以多次運行,所產生的結果是預期的,與第一運行并成功的結果是一樣的。初次攝入bash腳本有很多不足,敬請指正。 所需要的軟件 apr-1.5.2.tar.bz2 apr-util-1.5.4.tar.bz2 Discuz_X3.2_SC_UTF8.zip freetype-2.5.4.tar.gz htt…

    Linux干貨 2016-04-05
  • N21—-第一周課程練習題

    1、描述計算機的組成及其功能。 我們現在通常理解為計算機是由硬件系統+軟件系統組成的,根據馮·諾依曼體系結構。計算機主要由五大部件組成:      運算器(Datapath): 計算機中執行各種算術和邏輯運算操作的部件      控制器(Control):是整個計算機的中樞神經,…

    Linux干貨 2016-07-12
  • bash功能特性三 命令的引用、展開和補全

    一、bash的補全功能     1、命令補全     根據內建命令或外部命令的查找方式,查找以用戶指定的字符串開頭的命令,如果用戶指定的開頭字符串能惟一標識某命令,則tab鍵可以補全此命令,否則,則兩次tab鏈可顯示所有以指定字符串開頭的命令。   &nbsp…

    Linux干貨 2015-04-15

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-08-20 19:12

    這幾個腳本還是用到蠻多知識點的,很不錯,再接再勵。

欧美性久久久久