将带有空格的字符串存储到 Arrays Bash 中



我正在尝试将带有空格的字符串存储到数组中。我使用 IFS=" 并通过这样做注意到了这一点。我的array_size是 1,尽管我有多个字符串。有没有办法解决这个问题?

我正在使用的代码

size=0
declare -a new
for t in ${temp};
do
  new[size++]=$t
done;
for n in ${new[@]};
do
  echo $n end
done;

我的输出是..

my string 1
my string 2
another string 3
another string 3 end

我想要的输出想要这样的东西..

 my string 1 end
 my string 2 end
 another string 3 end

要遍历每个项目在单独行上的输入,您必须将 IFS 设置为换行符。

您可以执行以下操作以将项目读取到数组中。

declare -a new
IFS=$'n'
new=${temp}

相关内容

  • 没有找到相关文章

最新更新