2010-12-15 32 views

回答

0

AWK適合這種處理。

您編寫了一個程序(在某些方面它更像是一個腳本)並調用AWK解釋器,它通過解釋或自動編譯它來運行程序,並處理輸入並生成輸出。

您使用了MS-DOS標籤,因此如果您是在真正的MS-DOS下運行的AWK版本之後,谷歌「Rob Duff的AWK」。

否則有很多AWK包和資源http://www.klabaster.com/freeware.htm

AWK文件說了很多關於模式匹配和特定AWK-結構,但可以忽略。 AWK腳本看起來很像普通的C程序。它有三個部分 - 一個BEGIN子句,它是在輸入文件(目錄列表)被處理之前完成的東西,還有一個END子句(有一個猜測:-)和一個針對輸入文件中的每一行執行的部分。非常適合您的應用程序。

AWK程序的BEGIN和END部分將輸出必要的HTML標記,如標題和基本文本(包括標題等),並完成HTML文檔。 AWK打印命令將文本發送到輸出,您將其重定向到名爲index.html的文件。

要處理來自dir/s文件的行,並使用鏈接生成HTML文檔的主體,您可能必須編寫一些函數來解析目錄列表並計算樹排列。這取決於你想如何安排index.html列表。 AWK支持的功能就像C.

我建議使用dir/s/b而不是/ s,因爲結果將更容易解析。

1

你需要的東西像下面這樣:

@echo off 
    (
     echo ^<html^> 
     echo ^<head^> 
     echo  ^<title^>CD Directory^</title^> 
     echo ^</head^> 
     echo ^<body bgcolor="white" text="blue"^> 
     echo  ^<h1^>Directories^</h1^> 

     for /f "tokens=*" %%a in ('dir /b /ad /s') do (
     echo  ^<a href="file://%%a"^>%%a^</a^>^<br^> 
    ) 

     echo ^</body^> 
     echo ^</html^> 
    )>index.html 

將代碼複製並粘貼到記事本並保存爲一個批處理文件說,MAKHTML.BAT。然後啓動一個DOS DOX並通過輸入其運行該批處理文件的名稱即

makhtml 

這將產生一個相同的文件夾命名爲index.html文件。

相關問題