0
我必须运行一个命令,它使用bash脚本合并目录的每个子目录中的一些文件。 脚本查找所有.ps文件,将它们更改为.png文件,然后合并目录的.png文件。这必须为所有子目录完成。在带有文件名列表的脚本中运行bash命令
2_treeimages:包含目录列表。
对于2_treeimages中的每个目录 将.ps转换为png,然后合并。
以下程序将文件转换为.png,但在合并时出现错误,因为合并命令需要文件名列表,但这会给出单个字符串。
ps_dir=2_treeimages
for dirname in "$ps_dir"/*
do
inputlist=""
for filename in "$dirname"/*
do
if [ ${filename: -3} == ".ps" ]
then
filenoext="${filename%.*}"
result="$filenoext.png"
convert "$filename" "$result"
inputlist+="$result"
fi
done
combined_image="$dirname.png"
echo "$inputlist"
echo "$combined_image"
convert -append "$inputlist" "$combinedimage"
done
的inputlist显示为 '/2_treeimages/review12/review12sent0.png/2_treeimages/review12/review12sent1.png'
However it should be run as with 2 arguments
'/2_treeimages/review12/review12sent0.png'
'/2_treeimages/review12/review12sent1.png'
我猜你追加到'inputlist'时,就像缺少空间:'inputlist + =“$结果”' – Omar
加入空间不作出它仍然认为差别它是一个论点。我想我应该使用一个数组,但不知道如何使用它 – AMisra