String 将整数作为字符串添加到变量bash
我想通过向变量添加随机整数来创建字符串,从而输出字符串。然而,Bash只是将这些数字相加String 将整数作为字符串添加到变量bash,string,bash,int,String,Bash,Int,我想通过向变量添加随机整数来创建字符串,从而输出字符串。然而,Bash只是将这些数字相加 #!/bin/bash b="" for ((x=1; x<=3; x++)) do number=$RANDOM let number%=9 let b+=$number done echo ${b} #/bin/bash b=“” 对于((x=1;x有几种可能实现您所期望的行为。让我们首先检查一下您所做的: let b+=$number 正在运行帮助让: let: let ARGUMEN
#!/bin/bash
b=""
for ((x=1; x<=3; x++))
do
number=$RANDOM
let number%=9
let b+=$number
done
echo ${b}
#/bin/bash
b=“”
对于((x=1;x有几种可能实现您所期望的行为。让我们首先检查一下您所做的:
let b+=$number
正在运行帮助让
:
let: let ARGUMENT...
Evaluate arithmetic expressions.
这解释了为什么让b+=$number
对$number
执行整数加法(1
,2
,3
),而不是字符串串联
只需删除let
,就会出现所需的行为1
,11
,111
执行字符串连接的另一种方法:
b="$b$number"
是的,只需“让b
成为连接b
和number
的结果”
作为旁注,
b=“”
相当于b=
,因为“
被扩展为空字符串。变量上的模块操作可以通过算术展开来完成:number=$(RANDOM%9))
您也可以这样做算术展开:((number=RANDOM%9))