2010-08-18 65 views
0

我需要從文件系統讀取目錄結構並將其緩存在xml文檔中。有人可以建議我如何使用bash做到這一點?我只需要緩存目錄/子目錄下的文件而不是它們。Bash:如何讀取目錄結構並將其緩存到xml文檔中

該結構是隨機生成的,因此不知道每次有多少個節點以及該樹的深度有多大。它是分層的,每個級別都包含很多子目錄。

任何指導,將不勝感激。

+0

...以及您希望XML如何看起來像? – 2010-08-19 00:09:22

回答

1

不知道什麼目標XML應該看起來像,並需要捕捉什麼樣的信息,這裏有一個猜測:

#!/bin/bash.exe 

echo $'<?xml version="1.0" encoding="utf-8"?>\n<dirlist>' > directory_list.xml 
find . -type d -exec echo "<dir>{}</dir>" \; >> directory_list.xml 
echo "</dirlist>" >> directory_list.xml 

(該bash.exe是因爲我在Cygwin。)

下面是我的氧氣 「工具」 目錄的列表安裝目錄:

directory_list.xml

<?xml version="1.0" encoding="utf-8"?> 
<dirlist> 
<dir>.</dir> 
<dir>./.svn</dir> 
<dir>./.svn/prop-base</dir> 
<dir>./.svn/props</dir> 
<dir>./.svn/text-base</dir> 
<dir>./.svn/tmp</dir> 
<dir>./.svn/tmp/prop-base</dir> 
<dir>./.svn/tmp/props</dir> 
<dir>./.svn/tmp/text-base</dir> 
<dir>./ant</dir> 
<dir>./ant/.svn</dir> 
<dir>./ant/.svn/prop-base</dir> 
<dir>./ant/.svn/props</dir> 
<dir>./ant/.svn/text-base</dir> 
<dir>./ant/.svn/tmp</dir> 
<dir>./ant/.svn/tmp/prop-base</dir> 
<dir>./ant/.svn/tmp/props</dir> 
<dir>./ant/.svn/tmp/text-base</dir> 
<dir>./ant/bin</dir> 
<dir>./ant/etc</dir> 
<dir>./ant/etc/checkstyle</dir> 
<dir>./ant/lib</dir> 
<dir>./config</dir> 
</dirlist> 
相關問題