写了个生成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
原因:
RANDOM 是 bash
函数,在 dash
里还没声明,Debian
和Ubuntu
默认用dash
作为/bin/sh
的解释器,所以报错。