我尝试使用 += 运算符在 bash 中附加一个数组,但不知道为什么它不起作用
#!/bin/bash
i=0
args=()
while [ $i -lt 5 ]; do
args+=("${i}")
echo "${args}"
let i=i+1
done
Run Code Online (Sandbox Code Playgroud)
预期成绩
0
0 1
0 1 2
0 1 2 3
0 1 2 3 4
Run Code Online (Sandbox Code Playgroud)
实际结果
0
0
0
0
0
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激。
I ran shellcheck on my script and ran into an error on a very simple aspect -
echo "List of fields deleted: ${deleted[@]}"
^-----------^ SC2145: Argument mixes string and array. Use * or separate argument.
I am trying to do similar behavior as below-
declare -a deleted
deleted = ("some.id.1" "some.id.22" "some.id.333")
echo "List of fields deleted: ${deleted[@]}"
Run Code Online (Sandbox Code Playgroud)
Which is a better practice to print the elements in the array?
echo "List of fields deleted: ${deleted[@]}"
Run Code Online (Sandbox Code Playgroud)
OR
echo "List of …Run Code Online (Sandbox Code Playgroud)