使用bash循环具有多个条件的脚本

时间:2018-11-15 00:05:27

标签: bash loops

我试图基于我创建的附加列表'list2.txt'添加参数,但我不确定如何实现。

我的跑步代码

while read i
do
sed "s/Pie/$i/g" old_script.sh > new_script.$i.sh
sbatch new_script.$i.sh
done<list.txt

但是我想基于一个新列表添加以下条件...,但我不确定如何将其实现到我的工作脚本中

sed "s/Apple/__/g"

1 个答案:

答案 0 :(得分:1)

sed允许几种方式提供多个命令。您可以使用-e单独给它们,也可以将它们写到单个脚本字符串中。

GNU sed允许同一行上的命令用分号分隔,通常就是您会发现的内容,但是如果没有该版本,则可以使用嵌入式换行符。只要引用它就可以正常工作。

sed "s/Pie/$i/g; s/Apple/__/g;" old_script.sh # GNU specific but common

sed "
  s/Pie/$i/g
  s/Apple/__/g
" old_script.sh # general, should always work.

这两个都是有效的。