【发布时间】:2014-10-28 22:54:16
【问题描述】:
我有一个目录列表
/this/is/my/path/* (dir1, dir2, dir3, etc)
在每个目录中,我都有多个文件。文件的各个名称放置在 .xml 文档中。到目前为止,我正在从每个目录中调用我的脚本,然后手动替换目录名称来代替 DIRECTORY,该目录位于打印的 .xml 中的某些区域。
这是我用来插入文件名的脚本。
for i in *.zip ; do
i="${i%.*}"
echo "$i";
echo " <description>
<name>$i</name>
<file>this/is/my/path/DIRECTORY/$i.zip</file>
<partner>/this/is/another/path/DIRECTORY/$i.png</partner>
</description>">>DIRECTORY-list.xml
done
我知道我可以使用以下方法列出目录名称:
dir=/this/is/my/path/*
for dirs in $dir
do
echo `basename $dirs`
但显然这仅列出了目录。我需要将目录的名称放在变量中($dir1、$dir2、$dir3 等),然后以某种循环在第一个脚本中运行,然后将整个循环的最终产品放入一个巨人中.xml 文件。
需要考虑的事项: - 文件名和目录名中可能有也可能没有空格。
我希望这个问题措辞得当。谢谢!
【问题讨论】:
-
将文件循环粘贴在外循环中,并在循环中为
*.zip添加前缀"$dir"。