我從來沒有寫過BAT文件,但我想要做以下事情。BAT文件索引文件夾結構爲HTML
在共享網絡驅動器上,我們有一個文件/文件夾結構。我希望我的同事能夠雙擊BAT文件。然後,BAT文件應該爲這些帶有鏈接的文件生成HTML索引,併爲每個文件夾和子文件夾生成一個標題(不超過三個級別)。
我想我已經非常接近谷歌搜索和複製代碼,但我堅持在標題部分。
setlocal EnableDelayedExpansion
pushd %~dp0
for /L %%n in (1 1 500) do (
if "!__cd__:~%%n,1!" neq "" set /a "len=%%n+1"
)
for /r . %%g in (*) do (
setlocal EnableDelayedExpansion
set "absPath=%%g"
set "relPath=!absPath:~%len%!"
for %%F in ("!absPath!") do set "var=%%~dpF"
[MISSING CODE HERE]
echo "<a href='http://linkhere.com/!relPath!'>%%~ng</a>" >>output.txt
endlocal
)
echo %~dp0
popd
pause
這可能是凌亂的,因爲我不完全確定它在做什麼。 該文件安裝驅動器,然後遍歷所有文件夾並將它們列爲鏈接。但是,每次循環到達新文件夾或子文件夾時,我都需要添加標題。這個頭文件應該是HTML,所以我可以添加諸如展開,摺疊和格式化等功能。
我在這個大方向
for /f "tokens=1,2,3,4 delims=\" %%a in ("!relPath!") do set a=%%a&set b=%%b&set c=%%c&set d=%%d
set "fname=!d!" & set "fone=!a!" & set "ftwo=!b!" & set "fthree=!c!" & set "mainFolder=!a!"
IF [!fname!] == [] (set "fname=!c!" & set "fone=!a!" & set "ftwo=!b!" & set "fthree=")
IF [!fname!] == [] (set "fname=!b!" & set "fone=!a!" & set "ftwo=" & set "fthree=")
IF [!fname!] == [] (set "fname=!a!" & set "fone=" & set "ftwo=" & set "fthree=" & set "mainFolder=")
這東西試過設置每個文件夾和文件名到一些變量。每當這些變量中的一個發生變化時,我都希望使用它來回顯頭文件,但似乎無法解決這個問題。
也許我完全在錯誤的軌道上,但我會很樂意聽到它應該如何完成。
在此先感謝。
編輯> Foxidrive建議我在文件夾結構和輸出的實例添加。
上面的屏幕截圖演示了文件夾結構。 BAT文件將位於頂層文件夾(稱爲標準模板)。
輸出應該在這個形式的僞HTML
<h2 class='header' onClick='showHide(1)'>ABU</h2>
<div id='itemlist1' class='itemlist'>
<ul>
<li><a href='http://link-to-file.com/ABU/filename.doc'>Filename</a></li>
<li><a href='http://link-to-file.com/ABU/filename%202.doc'>Filename 2</a></li>
</ul>
</div>
[etc...]
<h2 class='header' onClick='showHide(9)'>Personeelszaken</h2>
<div id='itemlist9' class='itemlist'>
<h3 class='subheader' onClick='showHide(10)'>Algemeen</h2>
<div id='itemlist10' class='subitemlist'>
<ul>
<li><a href='http://link-to-file.com/Personeelszaken/Algemeen/filename.doc'>Filename</a></li>
<li><a href='http://link-to-file.com/Personeelszaken/Algemeen/filename%202.doc'>Filename 2</a></li>
</ul>
</div>
</div>
[etc...]
而不是閱讀不正確的代碼,你可以提供輸入文件夾/文件結構和你需要的HTML文件?有人可能提供工作代碼來做你需要的。 – foxidrive
夠公平的。我將在一分鐘內添加到OP中。謝謝。 –