使用bash
我正在尝试使用变量列表创建echo
命令。变量的数量可能因我想要做的而有所不同,但我知道我在$ctr1
计算了多少变量。它应该是什么样子的一个例子是:
echo "$var1,$var2,$var3"
等。最后一个变量与计数器的编号相同。
有人可以给我一个关于我应该做什么的想法,一个例子会很棒。我知道可以使用if
语句来完成计数器中可能的数字行但这是不切实际的,因为一行中可以有1到50个变量。我不知道这应该是一个数组或类似的,也不知道如何把它放在一起。对此的任何帮助都是有帮助的。
答案 0 :(得分:2)
是的,这应该是array而已。
而不是做例如。
var1=foo
var2=bar
var3=quux
ctr1=3
echo "${var1},${var2},${var3}"
你可以做到
var=("foo" "bar" "quux")
( IFS=,; echo "${var[*]}" )
示例:
$ cat test.sh
#!/bin/bash
# the following is equivalent to doing
# ( IFS=,; echo "$*" )
# but that wouldn't be a good example, would it?
for argument in "$@"; do
var+=( "${argument}" )
done
( IFS=,; echo "${var[*]}" )
$ ./test.sh foo
foo
$ ./test.sh foo bar
foo,bar
$ ./test.sh foo bar "qu ux"
foo,bar,qu ux