mmzznxc 发表于 2020-8-14 10:48:56

批处理(.bat)一键备份资料

复制代码到txt 另存为xx.bat 即可
             需要修改call :s 源地址即本机例如D:\XX 目标地址即服务器例如\\server\xx 服务器用户 密码 %output%
改成自己的 例如 call :s D:\XX \\server\xx admin 525252 %output%
undefined只支持一个文件夹,所以把文件放一起
复制前关掉某进程,如不需要删掉那段代码。如果是备份电子文档的话,建议结束Excel和word。PPT和PDF进程。看自己需求。 纯文本查看 复制代码
?

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
@echo off
setlocal enabledelayedexpansion

rem 生成log文件名
set output=%date:~,4%-%date:~5,2%-%date:~8,2%_%time%.txt
rem 因为windows不允许文件名里有冒号,所以这里把:换成-
set output=%output::=-%
set output=%output: =%

rem 调用函数完成功能,5个参数分别是源目录,目标目录,用户名,密码,log文件名
call :s 源地址即本机例如D:\XX 目标地址即服务器例如\\server\xx 服务器用户 密码 %output%
echo 文件已备份完成,30秒后自动关闭窗口
ping -n 30 127.0.0.1>nul
goto :eof

:s
echo %1 %2 %3 %4 %5
set src_path=%1
set dst_path=%2
set username=%3
set password=%4
rem log生成在目标路径
set log_file=!dst_path!\rizhi\%5

rem 创建目录
md !dst_path!\rizhi

rem 复制前关掉xx1.exe和xx2.exe进程.如用不到的话删掉这段代码.如需备份电子文档那就关掉excl和word进程
taskkill /f /im xx1.exe /im xx2.exe

rem 自动登录局域网电脑(不映射盘),先重启explorer
net use !dst_path! /user:!username! !password!
taskkill /f /im explorer.exe
start explorer.exe
ping -n 10 127.0.0.1>nul

echo 文件备份中..........请骚等
rem 复制前能进行对比,已有的文件一模一样无更新的·不复制。反之替换掉!
(for /f "delims=" %%f in ('dir /b /s /a-d !src_path!') do (
    rem 遍历所有子目录,获得文件%%f,然后将%%f中的原路径替换成目标路径,便于比较文件
    set cur_file="%%f"
    REM call set dst_file=%%cur_file:%src_path%=%dst_path%%%
    set pathb=%%~dpf
    REM call set dst_path=%%pathb:%src_path%=%dst_path%%%
    set dst_path=!pathb:%src_path%=%dst_path%!

    rem 创建子目录
    if not exist !dst_path! (md !dst_path!)

    rem 这里是正式覆盖,并且写入log文件
    REM echo xcopy /d /y !cur_file! !dst_path!
    set need_proc=0
    for /f %%i in ('xcopy /d /y !cur_file! !dst_path!^|findstr "复制了 1 个文件"') do (
      set need_proc=1
    )
    if !need_proc!==1 (echo !cur_file!)
))>"!log_file!"

:eof






这段代码自动备份资料到服务器上。由于某些原因所以不想用软件+不想映射盘+不想保存服务器的用户密码在本机,所以上星期在悬赏区找人定做,然后小改了一下。分享给大家。程序会自动对比,无更新的不复制。只复制新增、或更新的资料、文档。并且在服务器上会生成txt日志。好让你知道备份了那些资料。缺点就是没软件快,文件需要一个个作对比。不太适合服务器上使用,服务器资料多,还是用软件好。这个bat我是用在客户机上的。
https://attach.52pojie.cn/forum/202008/12/155210in4y8yf1pc1fnnyu.jpg


https://static.52pojie.cn/static/image/hrline/5.gif

https://two.lanzoui.com/iWVZgfjt1nc
批处理加密软件。不用怕用户 密码 泄露
bat和软件需要同一目录下

https://attach.52pojie.cn/forum/202008/12/160738hzj00om4ozxzqdqx.jpg

输入名字(先把名字改为数字或者英文)
https://attach.52pojie.cn/forum/202008/12/160841cl22h84xq2e9c2j1.jpg

然后需要改一个新名字
https://attach.52pojie.cn/forum/202008/12/160932ai39tr6zshyiqeby.jpg
https://attach.52pojie.cn/forum/202008/12/160949txc28x02h22aymah.jpg


加密后的效果↑BaiduShurufa_2020-8-12_15-40-42.jpg (34.11 KB, 下载次数: 1)
https://attach.52pojie.cn/forum/202008/12/160940z883mga5bjl3s336.jpg


页: [1]
查看完整版本: 批处理(.bat)一键备份资料