用批处理批量备份局域网电脑的文件



用批处理批量备份局域网电脑的文件
用批处理批量备份局域网电脑的文件


文章转自: 忆林子

今天我百度知道里看的时候,看到一个网友的提问,以下是他的提问(原文连接: https://www.360docs.net/doc/1110424288.html,/question/90390828.html?si=7 )
批处理编写 悬赏分:50 - 离问题结束还有 14 天 4 小时 我管理很多电脑,每台电脑有自己的编号,我需要备份每台电脑上不同分区的文件,例如303号电脑备份c:\1\2\ok.txt d:\3\4\5\good.txt
504号电脑备份c:\1\2\ok.txt d:\3\4\5\good.txt等等
,每台机备份的文件和位置是一样的就是机器编号不同,需要在我的u盘上建立以机器编号为文件夹的文件夹每台机要备份的文件都放在相应的文件夹上。
我的u盘是g盘,请高手指点一下写个批处理,只要我启动批处理的时候自己输入电脑编号就自动备份 问题补充: u盘备份
我看了一下他的意思,我的理解如下,他应该是一个网管,然后他想备份整个局域网的所有电脑的中的ok.txt跟good.txt这两个文件,如果是 这样的话,其实完全没必要用U盘,直接通过网络访问系统中的默认共享,然后用copy命令复制就好了。以下是我的批处理代码,这个批处理要结合一个列表文 件才能正常运行。具体的请参照附加的图片。
@ECHO OFF
rem 设置C盘要备份的文件名
set C盘要备份的文件=\1\2\ok.txt
rem 设置D盘要备份的文件名
set D盘要备份的文件=\3\4\5\good.txt
set /p 操作机器编号=[请输入机器编号:]
for /f "tokens=1,2-26 skip=2" %%a in (
'more list.txt'
) do (
if /i "%操作机器编号%"=="%%a" (
echo 正在连接机器:%%a 对应的IP地址是:%%b
net use \\%%b\C$ %%d /user:%%c 2>nul
net use \\%%b\D$ %%d /user:%%c 2>nul
if /i "%ERRORLEVEL%"=="0" (
rem 新建机器编号所对应的文件夹,如果已经存在,
rem 用1>nul跟2>nul是为了把新建文件夹时的提示信息跟
rem 错误信息发送到系统内部定义的一个空间中,让它不在
rem 命令行上显示出来
md ".\%操作机器编号%" 1>nul 2>nul
echo 连接 %%a 成功...
echo.
echo 正在将 %%a 号机器上C盘的 %C盘要备份的文件% 备份到 %%a 文件夹下
copy " \\%%b\C$\%C 盘要备份的文件%" ".\%%a" /y
echo 正在将 %%a 号机器上D盘的 %D盘要备份的文件% 备份到 %%a 文件夹下
copy " \\%%b\D$\%D 盘要备份的文件%" ".\%%a\" /y
) else (
echo 连接 %%a 失败...
echo 请确认IP地址,用户名及密码的正确性
)
)
PAUSE
EXIT
)

Powered by 无名小鬼 https://www.360docs.net/doc/1110424288.html,

相关文档
最新文档