Windowsバッチは、現在のディレクトリとすべてのサブディレクトリの空のフォルダを削除します

デスクトップのメモ帳の作成、メモ帳に以下をコピー&ペースト、メモ帳を使用すると、ダブルクリックを実行する必要があるディレクトリに、その後、ファイルを展開するためにバットの名前を変更します。

OFF @echo 
 SETLOCAL enabledelayedexpansion 
デル / QC:\ empty_dir 
デル / QC:\ directory.txt 
REM次のコードを加えたソート / R&LTを、順序は、フォルダを表す反転させます。ポストに旧親フォルダをサブフォルダ。
DIR / A:D / B / S " "   |ソート/ R&LT> " %CDの%の\のdirectory.txt "  / F " usebackqのdelimsの= " %% I " directory.txt "を行う
    REMエコー%% I:dirが入力IS " 
    REMのCD " %% I 

    REMエコーパスBATは次のとおりです。%〜F0  REMは印刷この batfile " 。Sパス全体を 
    エコーCURをDIRは: %% I 『』
    現在のディレクトリ内のREMすべての印刷ファイル次のファイルへ:
    DIR / A / B " %% I " > " C:\ folder_content.txt " 
    REMエコー=============================== ======================== 
    REMエコー==================コンテンツを折る:開始================ " 
    :タイプの" C:\ folder_content。TXT "
    エコーREM " ==================コンテンツ倍:終了================= " 
    REMエコー" ==== ================================================== = " 
    
    検索はディレクトリを表す成功した場合、現在のファイルの内容があるかどうかを確認するには、次のコマンドをfindstrのREMが空ではない、それ以外の場合は空です。
    REM注次の二つのこと 2 またはシンボル。    
    ます。findstr。" C:\ folder_content.txt " > NUL 2 > NUL &&(エコー" フォルダの" %% Iは" 空ていませんされていません")||(エコー"空である" &&エコー" %% I " >> " %でcd%の\のempty_dir " && RD " %% I " 
    デル" C:\ folder_content.txt " 
 デル   " %でcd%の\のdirectory.txt "

 

おすすめ

転載: www.cnblogs.com/kitor/p/11105857.html