目前的狀況是
我有一個\picture
此目錄下有很多資料夾
每個資料夾下又有很多圖片
像這樣

\picture\1\a.jpg
\picture\1\b.jpg
\picture\1\c.jpg

\picture\2\d.jpg
\picture\2\e.jpg

\picture\3\f.jpg
\picture\3\g.jpg
\picture\3\h.jpg
\picture\3\i.jpg


然後我想寫一個批次檔
讓他把所有的圖片移動到\picture\
並且把1、2、3這些資料夾刪除


我對批次檔還不是很熟悉
目前的想法只有先set PATH="%~dp0"
然後把用迴圈把所有子目錄的檔案都move到PATH

問題在於我不曉得如何用set指定subPATH=第一個子目錄


有大大可以為我解答嗎?
文章關鍵字
可以使用 搜尋該資料夾中 *.jpg 檔
再針對檔案 剪下
子資料夾的話直接刪除就好了


 
那如果是沒有附檔名的咧xD
因為還有一些檔案沒有副檔名
(p.s.不是因為"隱藏副檔名",因為檔案是從某app copy出來的,所以真的沒有附檔名)
@ECHO OFF
SETLOCAL EnableDelayedExpansion
C:
CD /D "%~DP0"
FOR /F "usebackq tokens=1* delims=" %%A IN (`dir /b /s` ) DO IF NOT EXIST %%A\\NUL IF NOT %%~nxA == %~nx0 move "%%A" ".\!cx!_%%~nxA" & set /a cx=cx+1
FOR /F "usebackq tokens=1* delims=" %%D IN (`dir /b /ad` ) DO rmdir /s /q "%%D"
es_mato wrote:
@ECHO OFFS...(恕刪)

大...大神!!!!

es_mato wrote:
@ECHO OFFSETLOCAL...(恕刪)


之前忙期末考,很久沒上論壇
真是太感謝大神了Orz
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!