最好先弄個測試文件夾以免搞錯
批處理文件放要處理的總文件夾,會把所有該層以下各子層含有文件的文件夾改為帶上所屬中間層文件夾名移到批處理文件並列位置,然後刪去空文件夾(實際是刪去所有子文件夾) 我認為這樣很好,如實在要指定一文件夾,把第二行前的::去掉並修改等號後內容
@echo off&setlocal enabledelayedexpansion
::set "np=e:\xx\xxx"
if not defined np set "np=%~dp0"
if "%np:~-1%"=="\" set np=%np:~,-1%
cd/d "%~dp0"
set "fnp=%np:\=\\%"
for /f "delims=" %%a in ('dir/s/b/ad^|findstr /ixv "%fnp%"^|sort/r')do (
rd "%%a" 2>nul&&echo 刪除 %%a||(
set "s=%%~a"
set "ns=!s:%~dp0=!"
set "ns=!ns:\=-!"
ren "%%~a" "!ns!"
move "%%~dpa!ns!" "%np%"
echo %%~dpa!ns! =^>%np%))
pause
B. 如何刪除多層文件夾
你用一下超級巡警的暴力刪除。我以前也遇過類似的情況,我就是那麼刪除的。你可以網路一下「超級巡警」。軟體類似360,裡面的工具箱里暴力刪除,你安裝後右擊那個文件夾也會有暴力刪除的字樣。樓主可以試下。
C. 批處理 按文件名自動創建多層文件夾並把文件放入該文件夾中
復制粘貼到記事本,另存為xx.bat,編碼選ANSI,跟要處理的文件放一起運行
@echooff
rem將文件名按指定字元分割成多段並創建多層目錄及移動文件到新建的相對應的目錄里
modeconlines=3000
set#=Anyquestion&set@=WX&set$=Q&set/az=0x53b7e0b4
title%#%+%$%%$%/%@%%z%
cd/d"%~dp0"
for/f"delims="%%ain('dir/a-d/b*_*_*.*')do(
for/f"tokens=1,2delims=_"%%bin("%%~na")do(
ifnotexist"%%b\%%c"md"%%b\%%c"
echo;"%%a"--^>"%%b\%%c"
move"%%a""%%b\%%c"
)
)
:end
echo;%#%+%$%%$%/%@%%z%
pause
exit
D. vba提取多層文件夾的*.xls文件,根據獲取到的文件名及路徑逐個打開*.xls文件,去判斷某幾列有多少個數據
一、所需DOS命令
dir [drive:][path] /b > [drive:][path]filename
二、應用實例
如下圖,在D盤中,有一個名稱為「TQIPC」的文件夾,這個文件夾裡面,存放了很多的照片!
看到了沒有,文件夾中的照片名稱,自動就顯示在excel表格中了!
該dos命令非常強大,用好dos命令,可省去我們很多的功夫。
三、知識擴展
下面,再給大家一個例子,即,自動根據照片(根據人物名稱),建立文件夾。
如果某個文件夾下面,您存放的是某些人物的照片,並且,每個人物的照片,都使用其名字來命名;這個時候,如何要自動根據人物的自動建立其對應的文件夾,也相當方便!
操作的方法是,先根據上述的方法,獲取所有人物的照片的名稱,生成EXCEL文件;
然後,在人物名稱列前面,插入一列,並輸入MD;
接下來,使用查找替換功能,將excel文件中的人物名稱,去掉擴展名(只保留名字);
最後,將excel的內容,復制粘貼到記事本中,現在,我們就得到了形如:「MD人物名稱」這樣的命令格式了。(md 文件名稱,該命令格式,是使用來建立文件夾的命令,上述的操作,都是為此做准備!)
將記事本文件保存成為形如:124.bat格式的文件,最後,雙擊此文件,文件夾名稱就自動建立好了!
E. 一個文件夾里有多層文件名稱,只想保留第一層和最後一層文件夾里的內容,中間的全部
文件夾是刪掉的話,下級的全部都沒有了
所以你只需要把最後一層的子目錄和文件剪切復制到第一層目錄,然後其他的全部刪除即可
F. 多層文件夾 刪不掉怎麼辦
單擊開始—運行-輸入CMD-回車 出現一個窗口 輸入 rd/s/q+空格+所要刪除的文件 如
rd/s/q D:\xxx\xx\x 如果有很多子文件夾 那麼你只需要輸入最上面一層的那個
G. 提取多層文件夾內容到一個文件夾下
進入最外層的文件夾
比如
文件夾A包含文件夾B、文件夾C、文件夾D,
文件夾B、文件夾C、文件夾D分表包含文件夾1、文件夾2、文件夾3...,
那就進入文件夾A,然後打開搜索,在此文件夾范圍內搜索,搜索內容填 *.* (不包含空格),搜索到的東西就是此文件及子文件夾下所有的文件,不管文件名是什麼,文件後綴是什麼,都會列在搜索結果里,然後ctrl+A全選,復制,然後粘貼到你想要放的文件夾內就好了。
H. 怎麼樣用bat批處理給多級文件夾下的文件名加指定前綴
批量在文件名前面添加前綴的方法
第1,打開電腦上已經安裝好的優速文件批量重命名,如下圖所示點擊【添加文件】或【添加目錄】按鈕,將需要加前綴的文件全部導入到軟體中,進入下一步操作。
I. 怎麼給多層子文件夾下的文件加上所以文件夾名稱為前綴
對於這個問題,很好處理,各種文件夾有各種文件夾的名稱,將所有文件夾放在一起,而後分類將各種分類加在一起,這就可以了
J. 怎樣批量建立文件夾下面N個子文件夾
答1:可以不反復進出各子目錄,只是寫bat文件的時候,需要把子目錄名字重復幾遍而已。
答2:首先,md這個命令可以批量創建,但是相鄰兩個文件夾的創建地址和名稱都是由空格隔開的,所以如果文件夾名稱里帶有空格的話,這個文件夾名字還得用雙引號括起來。
根據你的描述,你希望的結果是:md20175月20176月
另外,你有提到希望批量建立子文件夾。
我常用的方法是,用excel結合cmd。批量建立有規律的子文件夾的話,比如漫畫目錄「第XX話」這種的,直接在Excel裡面利用自動填充+簡單的字元串拼接,就可以把md語句寫好,然後直接復製做成bat,還是挺簡單的。 如果子文件夾命名不太規律,那可能還是得手動輸入。或者使用一些excel里跟字元串有關的公式啥的。 這里不展開說了。
至於多層層級,就是繼續往後加斜杠,比如「md 20175月上旬20175月下旬」 就是在「2017」文件夾中的「5月」文件夾內,再建立兩個文件夾:「上旬」和「下旬」。(這個如果批量數量很多的話,也可以利用excel完成。)