我必须按顺序创建 50 个文件r01.inp
并贴上标签r50.inp
,并且每个文件中也需要按顺序包含此文本。
#!/bin/bash
abc2 r01.inp > r01.log
我使用 echo 和 touch 创建了 50 个具有相同数据的文件,但我仍然必须手动更改r01.inp > r01.log
以匹配文件名。有什么方法可以生成多个文件,并且其中的数据也是按顺序排列的,即其中r01.inp
有abc2 r01.inp > r01.log
而其中r02.inp
有abc2 r02.inp > r02.log
等等。
答案1
来自谷歌bash 循环填充到 StackOverflow如何在 bash 中对整数序列进行零填充,以使所有整数具有相同的宽度?我最终得到:
for i in $(seq -f "%02g" 1 50)
do
echo "#!/bin/bash
abc2 r$i.inp > r$i.log" > r$i.inp
done
这将生成 r01~r50.inp 文件,每个文件将包含所请求的#!/bin/bash
hashbang 和abc2 r##.inp > r##.log
行。