2014-01-29 255 views
0

我想要文件夾中的文件的所有文件名以及csv文件中的子文件夾。對於我寫了一個batchscript它工作得很好:批處理:將文件名連續存儲到CSV文件中

set "Folder=N:\myFolder\mySubFolder\mySubSubFolder" 
dir /b "%Folder%">"Z:\worx\filenames.csv" 

filenames.csv的內容是這樣的:

N:\myFolder\file1.txt 
N:\myFolder\mySubFolder\file2.txt 
N:\myFolder\mySubFolder\mySubSubFolder\file3.txt 

現在我想連接的CSV文件的每一行。結果看起來像這樣:

The File:N:\myFolder\file1.txt#exists 
The File:N:\myFolder\mySubFolder\file2.txt#exists 
The File:N:\myFolder\mySubFolder\mySubSubFolder\file3.txt#exists 

有沒有人知道一個簡單的方法來做到這一點?

我想過另一個只擴展csv文件每行的批處理文件,但我正在尋找一種不太複雜的方法。

回答

0

試試這個:

@echo off 
set "Folder=N:\myFolder\mySubFolder\mySubSubFolder" 
(for /f "delims=" %%a in ('dir /b /s /a-d "%Folder%" ') do echo The File:%%a#exists)>"Z:\worx\filenames.csv" 
+0

工作正常,謝謝。 –

0
set "Folder=N:\myFolder\mySubFolder\mySubSubFolder" 
(
for /f "delims=" %%x in ('dir /b "%Folder%"') do echo(The File:%%x#exists 
)>"Z:\worx\filenames.csv" 

應該工作。文件名被應用於%%x並且固定文本前後輸出。 "delims="使得每個dir /b行的一個字符串不是一系列的標記。圍繞(for ...)的括號使重定向器將任何echo ed文本輸出到目標文件中。 >重定向器重新創建目標文件。 >>將追加到任何現有的文件。

您不妨考慮將/a-d添加到您的dir開關來抑制目錄名稱。

相關問題