Bash 检查脚本文件并将结果附加到日志文件

Bash 检查脚本文件并将结果附加到日志文件,bash,Bash,我正在尝试编写一个脚本,它将遍历5个脚本文件并执行它们 使用t1-5的内容作为输入,并将输出附加到日志文件,但它似乎不起作用。我试图增加一个变量I,表示t变量的数量。我这样做对吗?这个输出重定向是否确保所有结果都附加到同一个文件中 t1=`cat t1` t2=`cat t2` t3=`cat t3` t4=`cat t4` t5=`cat t5` cd .. cd tmp i=1 for g in `ls` do sh "$g" "t$i" > 0572log i

我正在尝试编写一个脚本,它将遍历5个脚本文件并执行它们 使用t1-5的内容作为输入,并将输出附加到日志文件,但它似乎不起作用。我试图增加一个变量I,表示t变量的数量。我这样做对吗?这个输出重定向是否确保所有结果都附加到同一个文件中

t1=`cat t1`
t2=`cat t2`
t3=`cat t3`
t4=`cat t4`
t5=`cat t5`

cd ..
cd tmp

i=1

for g in `ls`
do
    sh "$g" "t$i" > 0572log 
    i=$((i + 1)
done
首先,
i=$((i+1)
应该是
i=$((i+1))

其次,
>0572log
应该是
>0572log
,以便追加而不是覆盖

第三,如果希望多次运行脚本,最好将
0572log
放在其他地方(例如
。/0572log
),而不是放在
tmp
目录中。否则,下次运行脚本时,它将尝试执行
0572log


如果您有没有空格的简单文件名,
$g
t$i
周围的引号是不需要的。

@shelleter:我认为OP想要执行脚本文件
“$g”
使用shell
sh
和参数
t$i
而不是
cp$g t$i
,这将不会产生任何输出。也许你的意思是
cat
?好吧,我没有明白$g是另一个脚本。是的,你对cat的看法是正确的。删除注释。Doah!