1.cmd下生成目錄樹
windows下打開cmd通過"tree"命令查看目錄結構
通過 "tree /?" 查看幫助:
以圖形顯示驅動器或路徑的文件夾結構。 TREE [drive:][path] [/F] [/A] /F 顯示每個文件夾中文件的名稱。 /A 使用 ASCII 字符,而不使用擴展字符。
顯示當前路徑下的文件夾結構:
tree
顯示指定路徑下的文件夾結構:
tree D:\Python
tree "D:\Program file\" (路徑中有空格加引號)
顯示文件夾和文件結構: tree /f 生成目錄樹輸出到指定文件內: tree D:\Python /F > dirtree.txt
2.用PHP生成目錄樹
通過遞歸讀取目錄,以下代碼保存為dirtree.php文件,存放在需要檢索的目錄下。
可以通過php安裝目錄的php.exe或php-cgi.exe執行,
如果配置了php環境變量可以打開cmd切換到該目錄下輸入“PHP dirtree.php”
默認情況下控制台會輸出目錄結構,並在該文件夾下生成dirtree.txt文件寫入生成的目錄結構
1 <?php 2 header("Content-Type: text/plain; charset=utf-8"); 3 //獲取根目錄路徑 4 $dir=__DIR__; 5 //創建需要寫入的文件 6 $file = fopen("dirtree.txt", 'a+'); 7 8 dirtree($dir, $file); 9 10 /** 11 * @param mixed $dir 根目錄路徑 12 * @param mixed $file 將生成的目錄樹寫入到此文件內 13 * @param int $number 目錄層數,控制縮進用,根目錄下為0, 14 * 根目錄的子目錄下為1,子目錄的子目錄為2,依次增長 15 * @return void 16 */ 17 18 function dirtree($dir, $file, $number=0) 19 { 20 //獲得根目錄句柄 21 $root = opendir($dir); 22 //獲取目錄中下一個文件的文件名,成功返回文件名,失敗返回false 23 $filename = readdir($root); 24 //排除目錄"."和".." 25 while($filename=="."|$filename==".."){ 26 $filename = readdir($root); 27 } 28 //控制子目錄的縮進 29 $content = "|"; 30 for($i=$number;$i>0;$i--){ 31 $content = $content."\t"; 32 } 33 $number= $number+1; 34 35 while ($filename) { 36 echo $content."|-- ".$filename."\r\n"; 37 // 寫入文件 38 fwrite($file, $content."|-- ".$filename."\r\n"); 39 // 如果當前文件是文件夾,就遞歸調用 40 if (is_dir($dir."\\".$filename)) { 41 dirtree($dir."\\".$filename, $file, $number); 42 } 43 $filename = readdir($root); 44 } 45 } 46 ?>