[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理如何根据文件内容复制局域网服务器的文件?

1.txt里面的内容:
A(1620111129020030000022-1).tif
A(1620111129020030000025-1).tif
A(1620111129020030000053-1).tif
A(1620111129020030000110-1).tif
A(1620111129020030000122-1).tif
A(1620111129020030000065-1).tif
等等 文件名字没有规律,有大约1千100多件
全部分布于局域网服务器的\\192.168.2.253\JobSystem2\pdf目录里面的很多小文件夹内
现在我要做的是 一个P处理自动在\\192.168.2.253\JobSystem2\pdf搜索1.TXT的文件并且复制到 \\192.168.2.253\JobSystem2\1 《1是文件夹的名字》内。
有没有人可以写出这样的P处理???
实在 是感激不尽啊 ~~

  1. @echo off
  2. for /f "delims=" %%a in (a.txt) do (
  3.     copy "\\192.168.2.253\JobSystem2\pdf\%%a" "\\192.168.2.253\JobSystem2\1\"
  4. )
复制代码

TOP

如果是在局域网非在本地运行路径应为 \\计算机名\共享路径\

TOP

谢谢 find  的回答 我试试了 没有成功

TOP

FIND代码是没有错,关键是你路径是什么样的~!

TOP

回复 4# 鱼东东


报错信息是什么?

TOP

可能是路径的问题吧 点了马上秒退了 这个要是拿到服务器上去做的话 没准可以成功 去试试

TOP

回复 7# 鱼东东


    你把开头off 去掉...在最后面加个PAUSE 看一下他报错是什么~~

TOP

可能我没有说清楚 我说的
A(1620111129020030000022-1).tif
A(1620111129020030000025-1).tif
A(1620111129020030000053-1).tif

等等 这些文件 是在\\192.168.2.253\JobSystem2\pdf
pdf这个大文件夹里的小文件夹里 因为PDF里面有非常多的小文件夹 文件夹里面还有文件夹
那些我要找的文件具体我也不知道根目录是哪个文件夹

这样的话是不能搜索的是吗?DOS下不能搜索对不对?

TOP

回复 9# 鱼东东


可以先用net use命令把远程共享文件夹映射到本地,然后处理起来比较方便。

TOP

回复 9# 鱼东东


    那样只能取文件名对己知路径进行搜索读取路径再进行移动了~~!

TOP

回复 11# lovedjsn


怎么搜索?

TOP

路径自己改一下
如果是在局域网非在本地运行路径应为 \\计算机名\共享路径\
  1. @echo off
  2. ::源文件路径
  3. set "drv1=C:\JobSystem2\pdf\"
  4. ::目标路径
  5. set "drv2=C:\JobSystem2\1\"
  6. for /f "delims=" %%a in (1.txt) do call :a %%a
  7. goto :eof
  8. :a
  9. for /f "delims=" %%b in ('dir /s/b/a-d "%drv1%%1" 2^>nul') do (
  10. copy "%%b" "%drv2%"
  11. )
  12. goto :eof
复制代码

TOP

回复 13# lovedjsn


    感谢你的代码 我试试了
@echo off
::源文件路径
set "drv1=\\192.168.2.253\JobSystem2\pdf\"
::目标路径
set "drv2=E:\1"
for /f "delims=" %%a in (E:\1.txt) do call :a %%a
goto :eof
:a
for /f "delims=" %%b in ('dir /s/b/a-d "%drv1%%1" 2^>nul') do (
copy "%%b" "%drv2%"
)
goto :eof
运行后 定住了

TOP

本帖最后由 lovedjsn 于 2012-1-6 23:12 编辑

回复 14# 鱼东东


    问题出在你的\\192.168。。。这里建议你映射到本地再进行操作

   如果你是在服务器上直接运行的话~~代码应该是可行的~!

net use \\ip\ipc$ " " /user:" " 建立IPC空链接
net use \\ip\ipc$ "密码" /user:"用户名" 建立IPC非空链接
net use h: \\ip\c$ "密码" /user:"用户名" 直接登陆后映射对方C:到本地为H:
net use h: \\ip\c$ 登陆后映射对方C:到本地为H:
net use \\ip\ipc$ /del 删除IPC链接
net use h: /del 删除映射对方到本地的为H:的映射
复制于网络~~!

TOP

返回列表