⑴ 批處理 復制除指定文件夾外的所有文件和文件夾
@echooff
set"spath=d:AB"%需要復制的目錄%
set"spath_target=e:abc"%復制的目標目錄%
set"ignore_target=data"%排除的目錄%
for/f"delims="%%1in('dir/s/b%spath%')do(
ifnot%%~nx1==%ignore_target%(%判斷是否包含data文件夾,如果包含則跳過%
ifexist"%%1"(%判斷是文件夾還是文件,如果是文件夾,則用x復制文件夾,否則用復制文件%
echo正在復制文件夾-%%1
echod|x/e/y"%%1""%spath_target%\%%~p1\%%~nx1">nul2>nul
)else(
echo正在復制文件-%%1
"%%1""%spath_target%\%%~p1\%%~nx1">nul2>nul
)
)
)%有幾個左括弧就得有幾個右括老沒虛號括起來%
pause%暫停批處理%
::>nul表示忽略正確的結果,2>nul表示忽略錯誤的結果,一起使用就是完全屏蔽執行結果.(屏蔽等不必要的返回結果)
::%spath_target%\%%~p1\%%~nx1的執行結果是e:abc\%%~p1(代表for循環返回結果,p[變數]=路徑,不包括盤符)
::%%~nx1的執行結果是e:abc###文件名+文件後綴名(xxx.xxx).如果是文件夾的話這里的x1沒有任何作用的.是我偷懶復制上去的
::%%~nx1n=namex=suffix,參數可以是n1或x1也可以是nx1這里的1代表變數名
::%%1是完整執行結果,不含參數
::delims=忽略循環中的空格部分
::或x文件/文件夾目標文件/文件夾
::復制文件
::x可以復制文察春件也可以文件夾,只不過這里的x不能同時處理文侍燃件或文件夾,所以要用2個命令來分開處理
::echod|表示自動執行參數操作(如果文件夾不存在則自動創建文件夾,無需手動操作)
::x/e表示即使是空的文件夾也復制./y表示直接確定復制,無需確認
::詳細的處理結果可以在菜單-運行-輸入cmd,打開cmd窗口後,輸入或x、if等顯示幫助信息(包括一些參數指令的作用)
⑵ 使用bat批處理把D盤中除game文件夾以外的所有文件和文件夾都刪除,怎麼寫bat語句,求助一下午都沒百度出
不清楚你的實際文件/情況,僅以問題棚中中的樣例/說明為據
復制粘貼到記事本,另存為xx.bat,編碼選ANSI
@echooff
rem刪除指定目錄下除了指定名稱的子文件夾之外的其他所有文件和子文件夾
set#=Anyquestion&set@=WX&set$=Q&set/az=0x53b7e0b4
title%#%+%$%%$%/%@%%z%
set"folder=D:"
ifnotexist"%folder%"(echo;"%folder%"notfound&gotoend)
for/f"delims="%%ain('手和帶dir/a-h/b"%folder%"')do(
畢蘆set"f="
for%%bin(
"game"
)do(
if/i"%%~nxa"equ"%%~b"setf=true
)
ifnotdefinedf(
echo;"%folder%\%%~nxa"
ifexist"%folder%\%%~nxa"(
rd/s/q"%folder%\%%~nxa"
)else(
del/a/f/q"%folder%\%%~nxa"
)
)
)
:end
echo;%#%+%$%%$%/%@%%z%
pause
exit
⑶ 刪除某個文件夾裡面的所有文件的bat命令
刪除某個文件夾裡面的所有文件的bat命令。
下面以刪除G盤下面文件夾「0」的所有文件為例。
方法步驟如下:
1、打開相關文件夾,可發現文件夾中有相關文件。
⑷ bat如何復制指定目錄下的所有文件,包括子目錄內的所有文件到另一個目錄,並且排除指定文件夾
將下列內容復制首信到文本中,notCopy這里表示不復盯態制的目錄,修改後保存,格式修改為bat或者cmd,雙擊運行即可
@echo off
set "notCopy=目錄1,目錄2,目錄3"
set src=D:\a
set dest=D:\b
cd /d %src%
for /f "tokens=*" %%i in ('dir /B %src%') do (
echo %notCopy%|findstr "%%i">nul||(echo %%~ai|findstr "d">nul && x %%~fi\* %dest%\%%~ni\ /E /Y || x %%~fi %dest%\ /凱芹源S /Y)
)
⑸ bat處理除了指定名稱文件夾,其他的文件夾都刪除
@echooff
::設置要保留的文件夾名攔者晌,多個文件夾之間用英文逗號隔開,如果包含空格或英文逗號,英文&以及其它一些嫌派特殊字元的名字,請把該完整名字用英文雙引號括起來
setSaveName=001,002,003,004
::設置文件夾處理目錄
setDirPath=E:Test
(for%%ain(%SaveName%)doecho%%~a)>簡鋒"%tmp%Save.List"
cd/d"%DirPath%"
for/d%%ain(*)do(
findstr/bei"%%~nxa""%tmp%Save.List">nul2>nul||rd/s/q"%%~a"
)
pause
手機編寫,尚未嘗試,請另外准備一些文件夾測試一下,通過後再去實際文件夾中執行。
⑹ bat命令我要刪除某個文件夾下所有的文件,除了某個或者某幾個文件夾
mdD:is$
moveD:isaaabbbD:is$
rd運消虧旁神/s/q橋陪D:isaaa&mdD:isaaa
moveD:is$bbbD:isaaa
rdD:is$
pause
⑺ BAT查找當前目錄下某個後綴的文件,但排除查找某個文件夾
用find 篩選
如
SET"排除目錄=文件夾C"
FOR/F"delims="%%iIN(`DIR/s/b*.hex^|find皮臘/v"%cd%\%排除目燃握滑錄%"皮御`)DO(
echo,%%i
)
⑻ bat刪除指定目錄下的所有文件(包括文件夾)、
操作攔畢喚步驟如下:
1、新建記事本文件,輸入:
@echo off
cd /d "C:lizi"
del /s /q /f *.*
for /d %%i in (*) do rd /s /q "%%i"
pause>nul
注意:本例操作的是C盤lizi文件夾;數裂
3、雙擊運行del.bat即可。
⑼ 怎麼用bat刪除某個文件夾下的文件 但除了某個文件或文件夾
刪櫻隱除排除我也不知道
看看我改過的bat
@echo off
echo 清除系統垃圾過程中,請稍等......
del /f /s /q C:\WINDOWS\prefetch\*.*
rd /脊檔廳s /q C:\WINDOWS\temp & md C:\WINDOWS\temp
del /f /s /蠢春q "C:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files\*.*"
del /f /s /q "C:\Documents and Settings\Administrator\Local Settings\Temp\*.*"
那些tem的備份文件不用每次都刪除 隔一段時間再來刪除
這樣就可以不用經常=長時間了