bash echo不显示值

bash echo不显示值,bash,input,echo,sh,Bash,Input,Echo,Sh,当我运行下面的脚本时,echo没有显示任何内容,我也不知道为什么。如果我只是在终端中键入它,而不是从shell脚本中键入,它就可以工作。需要一些洞察力。我可能很累,但我非常确定这会起作用: #!/bin/sh for n in `seq 1 10` do r=$RANDOM t=$RANDOM s=$RANDOM f=$RANDOM echo "$r $t $s $f" done echo "Done" 从终端运行时,可能使用bash,而不是sh 似乎sh不

当我运行下面的脚本时,echo没有显示任何内容,我也不知道为什么。如果我只是在终端中键入它,而不是从shell脚本中键入,它就可以工作。需要一些洞察力。我可能很累,但我非常确定这会起作用:

#!/bin/sh
for n in `seq 1 10`
do
   r=$RANDOM
   t=$RANDOM
   s=$RANDOM
   f=$RANDOM
   echo "$r $t $s $f"
done
   echo "Done"

从终端运行时,可能使用bash,而不是sh


似乎sh不支持$RANDOM,因此您在脚本中分配的所有变量都将被分配为空字符串。尝试将脚本的第一行更改为/bin/bash或安装bash的任何地方。

从终端运行时,可能使用bash,而不是sh


似乎sh不支持$RANDOM,因此您在脚本中分配的所有变量都将被分配为空字符串。尝试将脚本的第一行更改为/bin/bash或安装bash的任何地方。

您的终端可能运行与/bin/sh不同的shell。例如,在Ubuntu上,/bin/sh运行/bin/dash,但$RANDOM在那里不起作用。您必须运行/bin/bash或/bin/ksh才能使其工作。

您的终端可能运行与/bin/sh不同的shell。例如,在Ubuntu上,/bin/sh运行/bin/dash,但$RANDOM在那里不起作用。您必须运行/bin/bash或/bin/ksh才能使其正常工作。

我的shell工作正常,就像我说的:如果我只是将其键入终端,它就可以工作哦,nvm,谢谢大家。我使用命令sh./run.sh而不是bash./run运行脚本。sh@Smac89:然后将到终端外壳的正确路径放到脚本的第一行。我的外壳工作正常,就像我说的:如果我只在终端中键入它,它就工作了哦,nvm,谢谢大家。我使用命令sh./run.sh而不是bash./run运行脚本。sh@Smac89:然后将终端外壳的正确路径放入脚本的第一行。