好久沒寫shell指令碼了,今天看到群裡有這麼乙個需求,截圖如下:
我也是複習一下shell指令碼,就順手寫了個程式測試了一下,基本上通過了
首先,用shell指令碼按行讀取文字,將每一行存入乙個陣列中
每次選擇乙個隨機數,來從陣列中取資料
注意,不能是重複的行,所以隨機數有標記字段
#!/bin/bash#檔案位置
file="./test.txt"
#計數器
i=0#按行讀取檔案內容,存入arr陣列中
for line in $(awk '' $file)
do arr[$i]=$line
i=$(expr $i + 1)
done
#構造隨機數陣列,假定檔案只有100行,當random[i]=0時說明第i行沒有被讀取
for i in $(seq 1 100)
do random[$i]=0
done
#構造隨機數,隨機選取25行
for ((i=0; i<25;))
do index=$random%100
if [ $ -eq 0 ]; then
random[$index]=1
echo $
i=$(expr $i + 1)
fidone
乙個shell指令碼
之前學過shell指令碼,但是工作中一直沒有用到,今天由於要搞乙個定時任務,為了防止重複啟動php指令碼,就需要寫乙個shell,下面是指令碼內容 bin bash 宣告要使用哪個shell 下面是備註檔案 這可是乙個好習慣奧 date 2012 7 18 version 1.0 設定相關變數 fi...
shell指令碼練習 每天乙個shell指令碼 7
我的部落格都是依照自己淺薄的現有知識去寫的,好多時候寫完了部落格,去查詢答案,會發現很多更剪短更效率更好的答案。寫部落格是激勵我自己能堅持下去,讓我的頭腦不去懈怠,望共勉。題目 write a script five dirs.sh that does these tasks make a dire...
shell 指令碼中將輸出內容賦值給乙個變數時不換行
如題,將某命令的輸出結果賦值給乙個變數 a 如果使用 echo a 輸出變數,則變數中的 換行都會被忽略掉,所有內容輸出到一行 而使用 echo a 可正常輸出變數中的換行 當我們要將命令的輸出儲存到乙個變數,再對每一行遍歷進行某些操作時不能使用 html view plain copy for i...