每週五練 shell程式設計

2021-09-28 19:59:27 字數 2244 閱讀 9003

#!/bin/bash

# 指令碼生成乙個 100 以內的隨機數,提示使用者猜數字,根據使用者的輸入,提示使用者猜對了,

# 猜小了或猜大了,直至使用者猜對指令碼結束。

# random 為系統自帶的系統變數,值為 0‐32767的隨機數

# 使用取餘演算法將隨機數變為 1‐100 的隨機數

num=$[random%100+1]

echo "$num"

# 使用 read 提示使用者猜數字

# 使用 if 判斷使用者猜數字的大小關係:‐eq(等於),‐ne(不等於),‐gt(大於),‐ge(大於#等於), ‐lt(小於),‐le(小於等於)

while  :

doread -p "計算機生成了乙個 1‐100 的隨機數,你猜: " guess

if [ $guess -eq $num ]

then

echo "恭喜,猜對了"

exit

elif [ $guess -gt $num ]

then

echo "猜大了!"

else

echo "猜小了!"

fidone

#!/bin/bash

# 檢測本機當前使用者是否為超級管理員,如果是管理員,則使用 yum 安裝 vsftpd,如果不

# 是,則提示您非管理員(使用字串對比版本)

if [ $user == "root" ]

then

yum ‐y install vsftpd

else

echo "您不是管理員,沒有許可權安裝軟體"

fi

#!/bin/bash

# 依次提示使用者輸入 3 個整數,指令碼根據數字大小依次排序輸出 3 個數字

read -p "請輸入乙個整數:" num1

read -p "請輸入乙個整數:" num2

read -p "請輸入乙個整數:" num3

# 不管誰大誰小,最後都列印 echo "$num1,$num2,$num3"

# num1 中永遠存最小的值,num2 中永遠存中間值,num3 永遠存最大值

# 如果輸入的不是這樣的順序,則改變量的儲存順序,如:可以將 num1 和 num2 的值對調

tmp=0

# 如果 num1 大於 num2,就把 num1 和和 num2 的值對調,確保 num1 變數中存的是最小值

if [ $num1 -gt $num2 ];then  

tmp=$num1

num1=$num2

num2=$tmp

fi# 如果 num1 大於 num3,就把 num1 和 num3 對調,確保 num1 變數中存的是最小值

if [ $num1 -gt $num3 ];then  

tmp=$num1

num1=$num3

num3=$tmp

fi# 如果 num2 大於 num3,就把 num2 和 num3 對標,確保 num2 變數中存的是小一點的值

if [ $num2 -gt $num3 ];then

tmp=$num2

num2=$num3

num3=$tmp

fiecho "排序後資料(從小到大)為:$num1,$num2,$num3"

#!/bin/bash

# 9*9 乘法表(編寫 shell 指令碼,列印 9*9 乘法表)

for i in `seq 9`

dofor j in `seq $i`

doecho -n "$j*$i=$[i*j]  "

# -n 不換行輸出

done

echo

done

#!/bin/bash

# 統計/var/log 有多少個檔案,並顯示這些檔名

# 使用 ls -r *遞迴顯示所有,再判斷是否為檔案,如果是檔案則計數器加 1

cd  /var/log

sum=0

for i in `ls -r *`

doif [ -f $i ];then

let sum++

echo "檔名:$i"

fidone

echo "總檔案數量為:$sum"

每週五練 shell

當 home log 目錄存在時 將 home目錄下所有tmp開頭的檔案或目錄移 home log 目錄。當 home log目錄不存在時,建立該目錄,然後退出。bin bash f judge 寫乙個指令碼查詢 data log目錄下,最後建立時間是3天前,字尾是 log的檔案,打包後傳送至192...

1月10日英雄聯盟LOL每週五免費英雄更換公告

什麼是每週免費英雄呢?新玩家們會發現就算你沒有買英雄,在遊戲中也有13個免費英雄可以使用。免費英雄我們會在每週五輪換,這樣大家不用花錢也能體驗到不同英雄帶來的不同樂趣。同時免費英雄中有很多適合新手使用的英雄,這樣也可以避免新手玩家在看到眾多英雄後不知道該選什麼。另外,在中國的伺服器中,我們額外增加了...

shell程式設計筆記(五)

我們再來重新說一下exec命令 這個命令很有用,我們可以把乙個已經開啟的檔案的檔案描述符複製到另乙個檔案描述符中,示例如下 touch test echo this is a test test exec 6 test exec 7 6 date 7 cat test 關閉檔案描述符 exec 檔案...