跳過 .bat 腳本中的隱藏資料夾

跳過 .bat 腳本中的隱藏資料夾

我正在嘗試找到一種方法來獲取所有文件的列表,而無需隱藏目錄。我嘗試過類似這樣的幾種變體:

dir  /b  /s  /a:-h  z:\  >toc-z.txt

但這只會跳過隱藏檔案。我需要一個排除所有隱藏資料夾的列表,包括這些隱藏資料夾的檔案和子資料夾。

有什麼方法可以跳過隱藏資料夾的解析和列出嗎?

答案1

這有點 hackish,但您可能可以使用xcopy帶有/land /s(或可能是/e)選項的命令。關鍵是/l告訴它顯示文件列表的選項成為複製而不是製作任何副本。預設情況下,xcopy不複製隱藏文件或系統文件,因此它們將被忽略。

答案2

這是一個很長的命令,但它有效,而且速度相當快:-)

這是命令列的一長串

>toc-z.txt ((for %F in ("z:\*") do @echo %F)&for /f "delims=" %D in ('dir /s /ad-h-l /b z:\*^|sort') do @for %F in ("%D\*") do @echo %F)

這是一個批次文件

@echo off
>toc-z.txt (
  for %%F in ("z:\*") do @echo %%F
  for /f "delims=" %%D in (
    'dir /s /ad-h-l /b z:\*^|sort'
  ) do for %%F in ("%%D\*") do echo %%F
)

相關內容