用linpack做測試,寫了一個腳本, 因爲每次可修改的參數寫在了配置文件裏,所以腳本里用sed命令來修改配置文件
#測試次數
echo “Input Number of tests:”
read numt
#每次測試的數據規模,測試次數有多少次,這裏應該又多少組數字,中間以空格隔開
echo “Input Number of equations to solve (problem size):”
read nume
#數組的主要維度,與數據規模數量相同
echo “Input Leading dimension of array:”
read ld
#運行試驗次數,即單次測試執行次數
echo “Input Number of trials to run:”
read numtr
#數據對齊值,單位是kb
echo “Input Data alignment value (in Kbytes):”
read da
這裏就錄入了四項參數,但是修改配置文件的sed命令居然不能正確修改配置文件,後來查了好多資料才知道,sed命令在使用變量的時候,和一般寫法是不一樣的,沒有變量的時候寫法是這樣的:
sed -i '2cIntel(R) Optimized LINPACK Benchmark data' testshellfile
使用變量的時候是這樣的:
sed -i "4c$nume" testshellfile
單引號變成雙引號,關於網上說的$前面需要加/來進行轉義,我這裏也沒有遇到,不加就已經可以了,加了反而會直接打印出來,也許是我還沒遇到需要轉義的地方