我有一个可执行文件,它接收一个文件并输出一行。 我在目录上运行循环:
for file in $DIRECTORY/*.png
do
./eval $file >> out.txt
done
可执行文件的输出不包含文件名。 我想在每个输出中附加文件名。
EDIT1
也许,我无法正确解释 我想要文件的名称和程序的输出,它正在处理相同的文件,现在我正在做以下
for file in $DIRECTORY/*.png
do
echo -n $file >> out.txt
or
printf "%s" "$file" >> out.txt
./eval $file >> out.txt
done
两个新行都插入
答案 0 :(得分:0)
如果我理解你的问题,你想要的是:
然后我建议编写一行文本(使用echo),包括:
...后面是处理文件的程序的输出:这是$(...)构造
echo $ file":" $(./ eval $ file)>> out.txt
...最后将这一行文字附加到一个文件中,你就得到了那个部分。
答案 1 :(得分:-1)
请像这样使用
echo -n `echo ${file}|tr -d '\n'` >> out.txt
OR
newname=`echo ${file}|tr -d '\n'`
echo -n $newname >> out.txt