Linux shell100例第二週練習

2021-09-29 02:20:56 字數 2550 閱讀 9970

6、猜數字遊戲

#!/bin/bash

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

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

num=$[random%100+1]

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

使用取餘演算法將隨機數變為

1‐100 的隨機數

echo 「$num」

while :

do

read -p "計算機生成了乙個 1‐100 的隨機數,你猜: " cai
使用 read 提示使用者猜數字

if [ $cai -eq $num ]

then

echo "恭喜,猜對了"

exit

elif [

$cai -gt $num ]

then

echo

「oops,猜大了」

else

echo

「oops,猜小了」

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

done

7、石頭、剪刀、布遊戲

#!/bin/bash

編寫指令碼,實現人機《石頭,剪刀,布》遊戲

game=(石頭 剪刀 布)

num=$[random%3]

通過隨機數獲取計算機的出拳

computer=katex parse error: expected '}', got 'eof' at end of input:

出拳的可能性儲存在乙個陣列中,game[0],game[1],game[2]分別是 3 中不同的可能

echo 「請根據下列提示選擇您的出拳手勢」

echo 「1.石頭」

echo 「2.剪刀」

echo 「3.布」

read -p 「請選擇 1‐3:」 person

使用 read 提示使用者猜數字

case $person in

if [ $num -eq 0 ]

then

echo "平局"

elif [

$num -eq 1 ]

then

echo

「你贏」

else

echo "計算機贏"
fi;;

if [ $num -eq 0 ]

then

echo "計算機贏"

elif [

$num -eq 1 ]

then

echo

「平局」

else

echo "你贏"
fi;;

if [ $num -eq 0 ]

then

echo "你贏"

elif [

$num -eq 1 ]

then

echo

「計算機贏」

else

echo "平局"
fi;;

echo 「必須輸入 1‐3 的數字」

esac

8、9*9 乘法表

#!/bin/bash

99 乘法表(編寫 shell 指令碼,列印 99 乘法表)

for i inseq 9

#使用for語句進行迴圈

do

for j
inseq $i

do

echo

-n "j∗j*

j∗i=$[i*j] "

done

echo

done

9、對 100 以內的所有正整數相加求和(1+2+3+4…+100)

#!/bin/bash

#對 100 以內的所有正整數相加求和(1+2+3+4…+100)

#seq 100 可以快速自動生成 100 個整數

sum=0

for i inseq 100do

sum=$[sum+i]
done

echo 「總和是:$sum」

10、將檔案中所有的小寫字母轉換為大寫字母

#!/bin/bash

#將檔案中所有的小寫字母轉換為大寫字母

$1是位置引數,是你需要轉換大小寫字母的檔名稱

執行指令碼,給定乙個檔名作為引數,指令碼就會將該檔案中所有的小寫字母轉換為大寫字母

tr 「[a‐z]」 「[a‐z]」

< $1

經典仿句100例 精美仿句100例

精美仿句例1.太陽無語,卻放射出光輝 高山無語,卻體現出巍峨。藍天無語,卻顯露出高遠 大地無語,卻展示出廣博。鮮花無語,卻散發出芬芳 青春無語,卻散發出活力。2.什麼樣的年齡最理想?鮮花說,開放的年齡千枝競秀。什麼樣的青春最輝煌?太陽說,燃燒的青春一片光芒。什麼樣的心靈最明亮?月亮說,純潔的心靈晶瑩...

shell指令碼100例

1 判斷檔案或目錄是否存在 bin bash if eq 0 then echo 未輸入任何引數,請輸入引數 echo 用法 0 檔名 目錄名 fiif f 1 then echo 該檔案,存在 ls l 1 else echo 沒有該檔案 fiif d 1 then echo 該目錄,存在 ls ...

shell指令碼100例

15 編寫指令碼,顯示進度條 bin bash jindu jindu cp a 1 2 killall 0 echo 拷貝完成 16 進度條,動態時針版本 定義乙個顯示進度的函式,螢幕快速顯示 bin bash rotate line rotate line 21 使用 expect 工具自動互動...