sh: arithmetic expression: expecting primary

寫了個生成1w個隨機數字並寫入文件的shell腳本:

#!/bin/bash

for i  in $(seq 1 10000)
do
echo " $i $(($RANDOM%100+1)) " >> test.dat ;
done

運行的時候卻報錯:
這裏寫圖片描述

1.sh: 5: 1.sh: arithmetic expression: expecting primary: "%100+1"

百度谷歌之,如下,換成:

bash 1.sh

原因:

RANDOMbash 函數,在 dash裏還沒聲明,DebianUbuntu 默認用dash作爲/bin/sh的解釋器,所以報錯。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章