标题: [其他] [已解决]批处理为移动子目录下文件添加密码卡住了 [打印本页]
作者: kafen 时间: 2020-2-4 17:51 标题: [已解决]批处理为移动子目录下文件添加密码卡住了
论坛里找了个移动子目录下所有文件到指定文件夹中的批处理,担心使用过程中不小心执行了,所以想添加一个密码,结果在执行创建指定文件夹后不能正常执行下一步了,烦请大伙们指教下,谢谢了- @echo off & setlocal enabledelayedexpansion
-
- set passwd=
- set /p passwd=请输入密码:
- if /i %passwd%==123456 goto start
- echo 密码错误!任意键退出...
- pause>nul
- exit
-
- :start
- if not "%~1"==":" (
- md %cd%\new 2>nul
- for /f "tokens=1*delims=/" %%i in ('"%~f0" :^|sort') do (
- if /i "%%i"=="!strName!" (
- set /a n+=1
- move "%%j" "%cd%\new\%%~ni(!n!)%%~xi"
- ) else (
- set "n="
- move "%%j" %cd%\new\
- )
- set "strName=%%i"
- )
- pause
- ) else (
- for /r %%i in (*) do echo %%~nxi/%%i
- )
复制代码
作者: flashercs 时间: 2020-2-4 19:45
- @echo off & setlocal enabledelayedexpansion
- if "%~1"==":" goto start
- set passwd=
- set /p passwd=请输入密码:
- if /i %passwd%==123456 goto start
- echo 密码错误!任意键退出...
- pause>nul
- exit
-
- :start
- if not "%~1"==":" (
- md %cd%\new 2>nul
- for /f "tokens=1*delims=/" %%i in ('"%~f0" :^|sort') do (
- if /i "%%i"=="!strName!" (
- set /a n+=1
- move "%%j" "%cd%\new\%%~ni(!n!)%%~xi"
- ) else (
- set "n="
- move "%%j" %cd%\new\
- )
- set "strName=%%i"
- )
- pause
- ) else (
- for /r %%i in (*) do echo %%~nxi/%%i
- )
复制代码
作者: kafen 时间: 2020-2-4 20:43
回复 2# flashercs
感谢,非常感谢!!!
作者: kafen 时间: 2020-2-4 21:09
回复 2# flashercs
您好,再请教下,能帮我看看下面的代码问题在哪里呢?如果最后能加入清空提取后的空子文件夹最好了,谢谢
@echo off & setlocal enabledelayedexpansion
if "%~1"==":" goto GTBegin
set passwd=
set /p passwd=请输入密码:
if /i %passwd%==123456 goto GTBegin
echo 密码错误!任意键退出...
pause>nul
exit
:GTBegin
echo.
echo.
echo ######################请选择要执行的操作######################
echo ------------1、输入数字1并按回车,以复制方式提取------------
echo ------------2、输入数字2并按回车,以剪切方式提取------------
echo.
echo.
echo 请选择要执行的操作
set /p GTConfirm=
if "%GTConfirm%"=="1" goto GTCOPY
if "%GTConfirm%"=="2" goto GTMOVE
echo 请输入正确的指令
pause >nul
goto GTBegin
:GTCOPY
if not "%~1"==":" (
md %cd%\new 2>nul
for /f "tokens=1*delims=/" %%i in ('"%~f0" :^|sort') do (
if /i "%%i"=="!strName!" (
set /a n+=1
copy "%%j" "%cd%\new\%%~ni(!n!)%%~xi"
) else (
set "n="
copy "%%j" %cd%\new\
)
set "strName=%%i"
)
pause
) else (
for /r %%i in (*) do echo %%~nxi/%%i
)
goto end
:GTMOVE
if not "%~1"==":" (
md %cd%\new 2>nul
for /f "tokens=1*delims=/" %%i in ('"%~f0" :^|sort') do (
if /i "%%i"=="!strName!" (
set /a n+=1
move "%%j" "%cd%\new\%%~ni(!n!)%%~xi"
) else (
set "n="
move "%%j" %cd%\new\
)
set "strName=%%i"
)
pause
) else (
for /r %%i in (*) do echo %%~nxi/%%i
)
:end
exit
作者: smss 时间: 2020-2-4 21:18
for /f "delims=" %%a in ('dir /ad /b /s ^|sort /r') do (rd "%%a" 1>nul 2>nul)
反正就这意思你自己改改路径
作者: kafen 时间: 2020-2-4 21:31
回复 5# smss
谢谢,上面的代码还运行不了
作者: flashercs 时间: 2020-2-4 21:48
没有问题. 有问题自己提.
作者: kafen 时间: 2020-2-4 22:23
回复 7# flashercs
我是添加了选项后不能正常运行呀,您刚才帮我改的加了密码的是可以运行的
作者: flashercs 时间: 2020-2-4 22:40
回复 8# kafen
是不能运行,这还得测试一下.麻烦
作者: flashercs 时间: 2020-2-4 22:57
回复 8# kafen - @echo off & setlocal enabledelayedexpansion
- if "%~1"==":" goto GroupFiles
- set passwd=
- set /p passwd=请输入密码:
- if /i %passwd%==123456 goto GTBegin
- echo 密码错误!任意键退出...
- pause
- exit /b
-
- :GTBegin
- echo.
- echo.
- echo ######################请选择要执行的操作######################
- echo ------------1、输入数字1并按回车,以复制方式提取------------
- echo ------------2、输入数字2并按回车,以剪切方式提取------------
- echo.
- echo.
- set /p GTConfirm=请选择要执行的操作:
- if "%GTConfirm%"=="1" goto GTCOPY
- if "%GTConfirm%"=="2" goto GTMOVE
- echo 请输入正确的指令
- pause
- goto GTBegin
-
-
- :GTCOPY
- md "%cd%\new"
- for /f "tokens=1* delims=/" %%i in ('"%~f0" :^|sort') do (
- if /i "%%i"=="!strName!" (
- set /a n+=1
- copy "%%j" "%cd%\new\%%~ni(!n!)%%~xi"
- ) else (
- set "n="
- copy "%%j" %cd%\new\
- )
- set "strName=%%i"
- )
- pause
- goto end
-
- :GTMOVE
- md "%cd%\new"
- for /f "tokens=1* delims=/" %%i in ('"%~f0" :^|sort') do (
- if /i "%%i"=="!strName!" (
- set /a n+=1
- move "%%j" "%cd%\new\%%~ni(!n!)%%~xi"
- ) else (
- set "n="
- move "%%j" %cd%\new\
- )
- set "strName=%%i"
- )
- pause
- goto end
-
- :GroupFiles
- for /r %%i in (*) do echo %%~nxi/%%i
- goto end
-
- :end
- exit /b
复制代码
作者: kafen 时间: 2020-2-4 23:49
回复 10# flashercs
谢谢谢谢!
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |