用過(guò)gothub或者碼云的同學(xué)都知道,不包含任何文件的空文件夾上傳提交時(shí)不被允許的。當(dāng)然你可以在空文件下創(chuàng)建.keep文件(或.gitkeep文件),然后就可以上傳了。
但是如果空文件夾比較多,并且我們確實(shí)不需要這些空文件了,那本文就學(xué)習(xí)一種命令行刪除所有空文件夾的方法。并封裝成.bat批處理程序。通過(guò)鼠標(biāo)右鍵運(yùn)行即可。
一,DOS刪除命令
1.1,刪除文件命令 del
若是想刪除文件,輸入del 盤(pán)符名:\文件名,比如,我想刪除一個(gè)在F盤(pán)的名為123.txt的文件,則輸入 del f:\123.txt 按回車(chē)就能刪除該文件了。當(dāng)然,該命令只能刪除文件,不能刪除文件夾。若要用該命令刪除一個(gè)文件夾,會(huì)顯示找不到文件123.txt。
1.2,刪除文件夾命令 rm
若是想刪除文件夾,輸入rd 盤(pán)符名:\文件夾名稱(chēng),比如,我想刪除一個(gè)在D盤(pán)的名為wo的文件夾,則輸入 rd d:\wo 這樣就能刪除文件夾了。當(dāng)然這種刪除方法必須要該文件夾是空文件夾,不然刪除不了。
1.3,文件夾和文件一起刪除
若是想將文件夾和文件一起刪除,輸入rd /s /q 盤(pán)符名:\文件夾名,這樣會(huì)將文件夾和它里面的文件一起刪除。比如,我想刪除一個(gè)在F盤(pán)的名為wo的文件夾和它里面的名為123.txt的文件,輸入: rd /s /q f:\wo 即可。
注意:刪除文件之前備份,不要將有用文件刪除!
實(shí)例一: 批量(循環(huán))刪除指定目錄下所有空文件夾
下面的代碼實(shí)現(xiàn)功能是批量刪除F:\盤(pán)下的所有空文件夾:
@echo off
for /f "delims=" %%a in ('dir /ad /b /s F:\^|sort /r') do (
rd "%%a">nul 2>nul echo 空目錄"%%a"成功刪除!
)
pause
可以復(fù)制以上代碼粘貼到文本文檔,然后修改文件名后綴.txt修改為.bat保存,鼠標(biāo)右鍵點(diǎn)擊打開(kāi)即運(yùn)行(或者以管理員身份運(yùn)行)。我測(cè)試結(jié)果如下:
空目錄"F:\aaa\bbb\ccc"成功刪除!
空目錄"F:\aaa\bbb"成功刪除!
空目錄"F:\aaa"成功刪除!
空目錄"F:\111"成功刪除!
請(qǐng)按任意鍵繼續(xù). . .
實(shí)例二:批量刪除多個(gè)磁盤(pán)的空文件夾
下面的代碼可以刪除c d e f 中所有的空文件夾:
@echo off
for %%i in (c d e f) do (
if exist %%i:\ (
for /f "delims=" %%a in ('dir /ad /b /s "%%i:\"^|sort /r') do (
rd "%%a"
)
)
)
pause
注意,以上命令會(huì)批量刪除c d e f盤(pán)下所有的空目錄,時(shí)間可能會(huì)長(zhǎng)一點(diǎn),請(qǐng)耐心等待。
好了,有了這個(gè)批處理程序,以后做整個(gè)項(xiàng)目的SVN或git地址切換的時(shí)候,提交上傳再也不用糾結(jié)一個(gè)一個(gè)排除空目錄的苦惱啦。
總結(jié)
以上所述是小編給大家介紹的用bat批處理程序通過(guò)DOS命令行刪除所有的空文件夾,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
您可能感興趣的文章:- 讓bat批處理以管理員權(quán)限運(yùn)行的實(shí)現(xiàn)方法
- BAT 批處理腳本教程(詳細(xì)篇腳本之家補(bǔ)充)
- Windows下使用批處理文件.bat刪除舊文件
- bat命令批處理判斷32位還是64位系統(tǒng)的多種方法
- 解決springmvc+mybatis+mysql中文亂碼問(wèn)題
- bat文件加密 bat解密腳本(讓bat亂碼現(xiàn)形)
- 解決bat批處理輸出亂碼的問(wèn)題