MENU

echo off

set /a n=0

set /p folderpath = "パスを指定してください:"

rem cdの後にパスを指定する
cd %folderpath%


for /r %%A in (*) do ( if exist %%A (set /a n=n+1) )

echo ファイル総数 = %n%
rem ログに追記
echo ファイル総数 = %n% >> BatLog.log

rem 指定したフォルダのファイル数をカウント
set /p folderpath2 = "収集するフォルダを指定してください:"
set /a n=0
for /f %%c in ('"dir %folderpath%\%folderpath2% /a-d /b | find /c /v """') do ( set /a n=n+%%c )

echo 指定したフォルダのファイル数 = %n%
rem ログに追記
echo 指定したフォルダのファイル数 = %n% >> BatLog.log

rem 指定した文が含まれているフォルダのファイル数を収集する
set /a n=0
set /p delFolderName="削除するフォルダの名前を指定してください:"
dir /AD /B /W %delFolderName%
for /f %%a in ('dir /AD /B /W %delFolderName%*') do for /f %%b in ('"dir %folderpath%%%a /a-d /b | find /c /v """') do ( set /a n=n+%%b )

echo ファイル数(A0*) = %n%
rem ログに追記
echo ファイル数(A0*) = %n% >> BatLog.log

rem 指定したパス内の、指定した文が付くフォルダをすべて削除する
:RESTART
set /p yn_check="削除してもよろしいですか? (y/n)"
IF %yn_check:Y=Y%==Y (
for /F %%a in ('dir /AD /B /W %delFolderName%*') do rd /S /Q %%a
) ELSE IF %yn_check:N=N%==N  (
rem 何もしない
) ELSE (
echo "もう一度入力してください"
GOTO RESTART
)

pause

call foldercheck.bat
@echo off

set /a n=0

set /p folderpath = "パスを指定してください:"

rem cdの後にパスを指定する
cd %folderpath%

for /r %%A in (*) do ( if exist %%A (set /a n=n+1) )

echo 削除後のファイル総数 = %n%
rem ログに追記
echo 削除後のファイル総数 = %n% >> BatLog.log

pause
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次