Linux操作系統編程 實驗一 Shell編程


實驗目的

按要求編寫3個腳本。

腳本1

編寫一段bash腳本,滿足如下要求:
(1)腳本接收2個整型參數,用來指定開始和結束
(2)計算並輸出從開始到結束整數間所有偶數的和

提示:
      采用for或者while循環
      引入局部變量對循環進行計數
      引入局部變量計算中間結果。

腳本2

編寫一段bash腳本,滿足如下要求:
(1)腳本接收1個字符串參數,用於指定目標路徑
(2)將目標路徑中的所有目錄名稱輸出到/tmp/dir.txt文件中
(3)將目標路徑中的所有文件名稱輸出到/tmp/files.txt文件中

提示:
      for filename in `ls`
      ls –F
      正則表達式匹配:if [[ $filename =~ (.*\/$) ]]
      注意每行代碼中的空格
      采用echo輸出

腳本3

編寫一段腳本bash腳本,使用awk計算score.txt中后三列的平均分,score.txt的內容如下

Marry   2143 78 84 77
Jack    2321 66 78 45
Tom     2122 48 77 71
Mike    2537 87 97 95
Bob     2415 40 57 62

實驗過程

exp01_1.sh

#!/bin/bash

read -p "please input ibegin: " begin
read -p "olease input iend: " end

i=$begin
sum=0
while [ $i -le $end  ]
do
        if [ $(($i%2)) -eq 0 ]
        then
                let sum+=i
        fi
        let i++
done
echo "sum=$sum"

exp01_2.sh

#!/bin/bash

read -p "please input a string: " path

for filename in `ls -F $path`
do
        if [[ $filename =~ (.*\/$) ]]
        then
                echo $filename >> /tmp/files.txt
        else
                echo $filename >> /tmp/dir.txt
        fi
done

exp01_3.sh

#!/bin/bash
awk '{print (($3+$4+$5)/3);}' /home/test/linux_xxxx_demo/score.txt

實驗結果

腳本1運行結果

腳本2運行結果

腳本3運行結果


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM