rem if not "%1"=="$" %comspec% /f:on /c %0 $ && goto :eof
:: 屏蔽掉上一句,用TabShift+Tab可实现同样功能
mode con lines=26
title 文件备份器-文件备份器
color 1f
cls
rem =========检测系统是否支持本程序=============
:check_system
ver|find "XP">nul || goto system_error
rem =========检测当前用户是否具有管理员权限=============
:check_popedom
net users %username%|findstr /i "*administrator">nul||goto popedom_error
call :del_nouse
rem =======输入要备份文件的路径并检测输入是否正确=======
:input_source
mode con lines=26
cls
color 1f
title 文件备份器-请输入源文件路径
echo ╭────────╮
echo ╭─────────┤选择要备份的文件├─────────╮
echo │ ╰────────╯ │
echo │ │
echo │ 本程序能把指定文件在指定时间内备份到指定位 │
echo │ │
echo │ 置。请把要备份的文件(或文件夹)拖曳至本窗口(推荐 │
echo │ │
echo │ 做法),或者手工输入需要备份文件的绝对路径或相对 │
echo │ │
echo │ 路径(请勿输入非法符号),然后回车确认。 │
echo │ │
echo │ 自动完成文件名请按TabShift+Tab,可多次选择。 │
echo │ │
echo │ 为了不错误删除数据,使用本软件前请查看注意 │
echo │ │
echo │ 事项!切记切记! (恢复文件请按 R ) │
echo │ │
echo ╰────────────────────────────╯
echo.
echo 查看注意事项请按 1 退出请按 0
echo ──────────────────────────────
echo 查看已存在的备份任务请按 2
echo.
set source=:
set /p source= 请输入要备份文件的路径:
set "source=%source:"=%"
:: 上面这句为判断%source%中是否存在引号,有则剔除。
if "%source%"==":" goto input_source
if "%source%"=="0" exit
if "%source%"=="1" goto notice
if "%source%"=="2" goto backup_task
if /i "%source%"=="r" goto revert
if not exist "%source%" goto source_noexist
for %%i in ("%source%") do if "%%~fi"=="%%~di" goto forbid_to_backup
:: 判断要备份的是文件还是文件夹,为以后的操作设置标志
pushd "%source%">nul 2>nul && (popd & set folder=yes)||(set folder=)
goto input_destination









