Bash script應用:大量程式資料輸出

前言

bash script can loop

上星期的多平行機程式作業要求要觀察工作量,處理器數目,對上運算時間的關係
當下第一個反應就是Bash script
Bash script有for loop可用,GNU/Linux有grep可以截取需要的字串(沒用上正規表示法有點可惜),還有資料流導向可以把結果存入檔案中
只要寫好script,開下去跑,就能去睡個午覺了~

看code

runScript.sh
#!/bin/bash


#Set output file name as variable

OUTPUT_FILE_NAME=fileName

#Make a clean file, and add curren date

echo "Make some date" > $OUTPUT_FILE_NAME
date >> $OUTPUT_FILE_NAME

for ProcessNum in {1..12}
do
    for WorkCount in {1..10}
    do
        echo "--------------------------------------------" >> $OUTPUT_FILE_NAME
        echo "Process number: $ProcessNum" >> $OUTPUT_FILE_NAME
        echo "Work count: $WorkCount" >> $OUTPUT_FILE_NAME
        ##Add your job here##

        echo "" >> $OUTPUT_FILE_NAME
   done
done

重點提示

  • for ProcessNum in {1..12} 相等與 for ProcessNum in 1,2,3,4,5,6,7,8,9,10,11,12
  • 在bash script裏面,空白非常非常非常 邪惡 嚴格,請確認該空白的地方有空白,不該空白的地方沒空白

雜談

當然,也可以加上一些運作提示,表明目前的工作進度等等
不過我有些犯懶,就沒寫上來了

參考資料

Bash For Loop Examples

Comments

comments powered by Disqus