2016-08-04 215 views
0

我有一個文件夾C:\愛普生掃描,我想弄清楚如何編寫一個腳本,將刪除該文件夾的內容,但離開該文件夾完好無損。我想出瞭如何刪除整個文件夾,我可以重新創建它。但我想知道是否有人知道刪除文件夾內的內容,而不是實際刪除文件夾的方法。任何幫助,將不勝感激!刪除文件夾內容但不是文件夾

編輯:插入工作代碼,以便我可以循環使用多臺計算機並一次完成。請問有人會告訴我爲什麼代碼不能在我插入的地方工作?

@echo off 
setlocal enabledelayedexpansion 
set Delete_success=0 
set total=0 

for /F %%G in (pclist.txt) do ( 
    set /a total+=1 


pushd "C:\Epson Scans" || exit /B 1 
for /D %%I in ("*") do (
    rd /S /Q "%%~I" 
) 
del /Q "*" 
popd 

if !ERRORLEVEL!==0 (
     set /a Delete_success+=1 
    ) else (
     echo EpsonDelete copy failed on %%G>>EpsonDelete_FailedPCs.txt 
    ) 

) 
echo Delete Success: %Delete_success%/%total% >>EpsonDelete_FileCopy.txt 
+1

[del /s](http://ss64.com/nt/del.html)? – Stephan

+0

您是否需要刪除其他文件夾?del /f/q/s – lordkain

+1

可能有[批處理文件。刪除目錄中的所有文件和文件夾](http://stackoverflow.com/questions/6836566/batch-file-delete-all-files-and-folders-in-a-directory) –

回答

2

del刪除文件而已,所以del /S /Q "C:\Epson Scans"刪除指定文件夾下的所有文件子文件夾(由於/S)。

rmdir刪除文件夾,因此指定rmdir /S /Q "C:\Epson Scans"也會刪除文件夾Epson Scans本身。

當然你可以執行mkdir "C:\Epson Scans"然後重新創建刪除的文件夾,但這並沒有要求。所以正確答案是使用for /D遍歷C:\Epson Scans並刪除它包含的每個文件夾,然後用del /Q刪除文件:

pushd "C:\Epson Scans" || exit /B 1 
for /D %%I in ("*") do (
    rd /S /Q "%%~I" 
) 
del /Q "*" 
popd 

注意rd相同rmdir - 也看到這個帖子: What is the difference between MD and MKDIR batch command?

1)注意如果你這樣做了某些文件夾屬性,例如所有者。此外,當Windows以不區分大小寫的方式處理路徑時,這種情況會丟失。

+0

您能否幫助我?您的代碼工作完美,但我試圖將其插入我的,崩斷我在想,如果你可以採取一看它的很短 –

+0

'@迴響 SETLOCAL enabledelayedexpansion 集Delete_success = 0 合計設定= 0 的/ F %% G in(pclist。TXT)做( 集/共+ = 1 PUSHD 「C:\愛普生掃描」 ||出口/ B 1爲 /d %%我在( 「*」)做( RD/S/Q「 %%〜我」 ) DEL/Q 「*」 POPD 如果!ERRORLEVEL!== 0( 套/年Delete_success + = 1 )其他( 回聲EpsonDelete複製失敗上%% G >> EpsonDelete_FailedPCs。 txt ) ) echo刪除成功:%Delete_success%/%total%>> EpsonDelete_FileCopy.txt' –

+0

有什麼機會可以告訴我我哪裏會出錯? –

1

德爾/ SC:\愛普生掃描*
(使用S刪除所選文件夾中的所有文件和文件夾)

+1

'del'會遞歸刪除所有*文件,但會將空的子文件夾留在... – aschipfl

1

刪除C:\愛普生掃描* 如果這是批處理文件可能要添加/ Q,以避免刪除確認對話框:

del C:\Epson Scans\*.* /Q 
+1

需要引號,因爲路徑有空格。 –

+0

'del'會遞歸刪除所有*文件*,但會在後面留下空的子文件夾... – aschipfl

相關問題