我基本上正在寻找一种方法来做到这一点。
list=$(command)
while read -r arg
do
...
done <<< "$list"
使用sh代替bash。由于最后一行的原因,代码无法运行如下:
syntax error: unexpected redirection
有任何修复方法吗?
编辑:我需要编辑变量并在循环外访问它们,因此不接受使用|
(因为它会创建具有独立作用域的子 shell)。
编辑 2:这个问题与为什么我的 Bash 计数器在 while 循环后重置不同,因为我没有使用|
(正如我在最后一个编辑中注意到的)。我正在寻求另一种实现方式。(链接问题的答案只解释了问题发生的原因,但没有提供任何适用于 sh(无 bash)的解决方案。)