如何在 bash 的 for 循环中迭代多行?

adb*_*ads 1 bash

我目前有一个类似于下面的 bash 脚本:

for i in foo_dir/foo_filename.xml,passed,"some string" foo_dir/bar_filename.xml,failed,"another string" foo_dir/foobar.xml,passed,"string"

do
<some bash script>
done
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我在 for 循环中迭代的内容全部在 1 行上。这很烦人。我希望能够将所有正在迭代的元素放置在单独的行上,如下所示(更易于阅读和更改):

我已经在下面尝试过了,但似乎不起作用。

for i in foo_dir/foo_filename.xml,passed,"some string"
 foo_dir/bar_filename.xml,failed,"another string" 
 foo_dir/foobar.xml,passed,"string"

do
<some bash script>
done
Run Code Online (Sandbox Code Playgroud)

有没有办法使用一些额外的语法或我缺少的东西来完成上述操作?

Den*_*lko 5

确保反斜杠后没有尾随空格

for i in foo_dir/foo_filename.xml,passed,"some string" \
 foo_dir/bar_filename.xml,failed,"another string" \
 foo_dir/foobar.xml,passed,"string" 

do
<some bash script>
done
Run Code Online (Sandbox Code Playgroud)