找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 30881|回复: 9

[系统相关] [上传了rsync.exe]批处理使用rsync.exe的问题,求解。

[复制链接]
发表于 2014-3-5 14:50:43 | 显示全部楼层 |阅读模式
本帖最后由 missll 于 2014-3-5 16:25 编辑

rsync.exe 官网下载:https://www.itefix.no/i2/content/cwrsync-free-edition
  1. for /f "tokens=1" %%i in (1.txt) do (
  2. rsync.exe %%i::)
复制代码
我使用批处理从一文本中获取出IP地址来使用rsync.exe %%i::命令来链接服务器 列出的结果如下。


E:\3.1.0>for /F "tokens=1" %i in (1.txt) do (rsync.exe %i:: )
E:\3.1.0>(rsync.exe 124.248.39.26:: )
E:\3.1.0>(rsync.exe 124.248.32.26:: )
new27                 
0.8                   
www                   
E:\3.1.0>(rsync.exe 124.248.32.112:: )
E:\3.1.0>(rsync.exe 124.248.32.221:: )
image
union                  linuxsir tmp
E:\3.1.0>(rsync.exe 124.248.34.88:: )
E:\3.1.0>(rsync.exe 124.248.35.198:: )
++++++++++++++++++++++++++++++++++++++++++++
++++++++3dzhimo rsyncd service++++++++++++++
++++++++++++++++++++++++++++++++++++++++++++
3dzhimo                3dzhimo
3dzhimodb              3dzhimo

E:\3.1.0>(rsync.exe 124.248.34.227:: )

能链接的会显示出目录来 不能链接的什么都不显示, 我想把可以链接的IP地址和目录保存到文本中,但是我无法判断链接成功和失败的区别

请问各位大神 如何解决呢? 有没有成品的批处理  或者指点一二。。。。
发表于 2014-3-5 15:41:05 | 显示全部楼层
能不能吧rsync.exe 传上来
发表于 2014-3-5 16:14:47 | 显示全部楼层
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=1" %%i in (1.txt) do (
  3. rsync %%i:: | findstr ".*"
  4. if !errorlevel! equ "0" (echo %%i)>ip.txt
  5. )
复制代码
你试试
 楼主| 发表于 2014-3-5 16:28:22 | 显示全部楼层
本帖最后由 missll 于 2014-3-5 16:48 编辑
你试试
ivor 发表于 2014-3-5 16:14



if !errorlevel! equ "0" (echo %%i)>ip.txt

测试了下这样不能输出文本 我修改了一下

if !errorlevel! ==0 echo %%i>>ip.txt

先把可链接的地址输入IP.TXT 然后再次执行

for /f "tokens=1" %%i in (ip.txt) do (
echo %%i >>xxx.txt
rsync %%i:: >>xxx.txt)

这样就可以显示IP 地址 和目录了。 分了2步来操作。 麻烦点 但是也可以解决问题。


感谢你的回复。。。。。。。。。。。。。
发表于 2014-3-5 16:42:53 | 显示全部楼层
回复 4# missll
  1. @echo off
  2. (for /f "tokens=1" %%i in (1.txt) do (
  3.     rsync.exe %%i::
  4. ))>2.txt 2>&1
复制代码
运行这个代码,把 2.txt 的内容发出来看看。
 楼主| 发表于 2014-3-5 16:51:07 | 显示全部楼层
回复  missll 运行这个代码,把 2.txt 的内容发出来看看。
DAIC 发表于 2014-3-5 16:42



    你好,感谢你的回复,我修改了一下 ivor 帮助我写的 目前可以实现想到的功能了 虽然麻烦了一点。。。
发表于 2014-3-5 16:57:48 | 显示全部楼层
回复 6# missll


    你不是说 errorlevel 不管成功失败都是 0 吗?
发表于 2014-3-5 17:00:12 | 显示全部楼层
回复 4# missll
  1. @echo off
  2. (for /f "tokens=1" %%i in (1.txt) do (
  3.     rsync.exe %%i::
  4.     if errorlevel 1 (
  5.         >>3.txt echo %%i
  6.     )
  7. ))>2.txt 2>&1
  8. findstr /v /x /g:3.txt 2.txt >结果.txt
复制代码
试试这样行不行
发表于 2014-3-5 20:36:08 | 显示全部楼层
但是我无法判断链接成功和失败的区别----------返回的字符串,或者空来判断即可呀。
发表于 2014-3-5 22:01:39 | 显示全部楼层
回复 1# missll
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=1" %%i in (1.txt) do (
  3. rsync %%i:: | findstr ".*" >nul
  4. if !errorlevel! equ 0  echo,%%i & rsync %%i::
  5. )>>IP.TXT
  6. pause
复制代码
这是补全了的代码,应该能满足你的要求了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-21 05:28 , Processed in 0.033916 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表