免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3765 | 回复: 12

[文件目录] 时时scp ABC。。目录下文件 汇聚到 D服务器指定目录下 [复制链接]

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-04-21 06:20:00
发表于 2018-03-26 14:44 |显示全部楼层
先拜谢大神!

求教:
将A B C三台服务器/raw/row/0326/目录下(0326虽时间变化,0326下文件名为Xa_t1_201803261009。。、Xa_s1_201803261009。。。、Xa_o1_201803261009。。。,且会不断有新文件生成)
时时 分别 scp 到D服务器/raw/row/huiju下

拜托各位帮帮忙,给个思路,或者直接出脚本,拜谢了

论坛徽章:
25
程序设计版块每日发帖之星
日期:2016-05-03 06:20:0015-16赛季CBA联赛之八一
日期:2018-07-05 10:34:09黑曼巴
日期:2018-07-06 15:19:5015-16赛季CBA联赛之佛山
日期:2018-08-03 13:19:3315-16赛季CBA联赛之山西
日期:2018-08-07 19:46:2315-16赛季CBA联赛之广夏
日期:2018-08-08 19:31:5015-16赛季CBA联赛之青岛
日期:2018-11-26 15:21:5015-16赛季CBA联赛之上海
日期:2018-12-11 09:45:3219周年集字徽章-年
日期:2020-04-18 23:54:5215-16赛季CBA联赛之深圳
日期:2020-04-19 21:40:19黑曼巴
日期:2022-04-03 17:55:1315-16赛季CBA联赛之八一
日期:2018-07-03 16:56:46
发表于 2018-03-26 15:09 |显示全部楼层
本帖最后由 wh7211 于 2018-03-26 15:30 编辑

回复 1# 布晓德


  1. 在D上创建脚本“a.sh”:
  2. #!/bin/bash
  3. a="a_user@a_ip:/raw/row/$(date +%m%d)"
  4. b="b_user@b_ip:/raw/row/$(date +%m%d)"
  5. c="c_user@c_ip:/raw/row/$(date +%m%d)"
  6. d_path="/raw/row/huiju"
  7. for i in ${a} ${b} ${c}
  8. do
  9.     rsync -avzuP ${i}/* ${d_path}
  10. done

  11. 把“a.sh”添加到crontab中,每分钟执行1次:
  12. * * * * * /YourPath/a.sh > /YourPath/a.log 2>&1
复制代码

论坛徽章:
24
申猴
日期:2014-10-10 15:56:39射手座
日期:2014-10-10 15:57:18黑曼巴
日期:2018-05-14 11:05:122016科比退役纪念章
日期:2018-05-14 11:05:0715-16赛季CBA联赛之北控
日期:2018-05-14 11:05:0015-16赛季CBA联赛之江苏
日期:2017-02-27 18:11:0715-16赛季CBA联赛之上海
日期:2018-08-15 09:48:5415-16赛季CBA联赛之佛山
日期:2018-07-20 17:14:2315-16赛季CBA联赛之佛山
日期:2019-09-10 18:08:4615-16赛季CBA联赛之山西
日期:2020-03-26 09:40:5115-16赛季CBA联赛之佛山
日期:2020-05-08 09:03:54
发表于 2018-03-26 15:22 |显示全部楼层
本帖最后由 chengchow 于 2018-03-26 15:24 编辑
  1. #!/bin/bash

  2. IP_ADDR=`hostname -i`
  3. MONTH_DATE=`date +%m%d`

  4. SSH_USER=username
  5. #SSH_PASS=password
  6. SSH_PORT=22
  7. SSH_HOST=0.0.0.0
  8. KEY_FILE=/data/keys/private.key

  9. LOCAL_PATH=/raw/row/$MONTH_DATE
  10. REMOTE_PATH=/data/backup/$IP_ADDR

  11. SSH_LOGN="ssh -i $KEY_FILE -p $SSH_PORT $SSH_USER@$SSH_HOST"

  12. $SSH_LOGN "
  13.       [ ! -d $REMOTE_PATH/$MONTH_DATE ] && mkdir -p $REMOTE_PATH/$MONTH_DATE
  14. "

  15. rsync -aqz -e "ssh -p $SSH_PORT -i $KEY_FILE"  $LOCAL_PATH $SSH_USER@$SSH_HOST:$REMOTE_PATH/$MONTH_DATE/

  16. exit 0
复制代码

论坛徽章:
0
发表于 2018-03-26 15:42 |显示全部楼层

#当前目录+装配shell命令
[root@localhost shell]# ls -al | awk '{print "scp /root/shell/"$9" root@10.20.0.181:/tmp/test/"}' > 8.sh

#执行. 前提要做过互信,否则会弹出输入密码
sh 8.sh

论坛徽章:
24
申猴
日期:2014-10-10 15:56:39射手座
日期:2014-10-10 15:57:18黑曼巴
日期:2018-05-14 11:05:122016科比退役纪念章
日期:2018-05-14 11:05:0715-16赛季CBA联赛之北控
日期:2018-05-14 11:05:0015-16赛季CBA联赛之江苏
日期:2017-02-27 18:11:0715-16赛季CBA联赛之上海
日期:2018-08-15 09:48:5415-16赛季CBA联赛之佛山
日期:2018-07-20 17:14:2315-16赛季CBA联赛之佛山
日期:2019-09-10 18:08:4615-16赛季CBA联赛之山西
日期:2020-03-26 09:40:5115-16赛季CBA联赛之佛山
日期:2020-05-08 09:03:54
发表于 2018-03-26 16:56 |显示全部楼层
回复 4# bomingjie
三种方法可以解决互信问题

1. SSH key认证,如上
2. 用sshpass命令,epel源上有
3. expect命令,比较麻烦





论坛徽章:
0
发表于 2018-03-27 10:11 |显示全部楼层
收到。
建议使用楼上,1 2 。目前业内常用且简单的

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-04-21 06:20:00
发表于 2018-03-27 14:45 |显示全部楼层
回复 2# wh7211
非常感谢!
另外有一个问题,聚会目录里面的文件,会有其他程序读取,且读完以后会挪着,这样的话在用rsync方式就不太可行了,有没有纯shell的方式呢。(我不太清楚怎么用纯shell时时将新产生的文件从源目录传走,这个是难点。

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-04-21 06:20:00
发表于 2018-03-27 14:46 |显示全部楼层
回复 3# chengchow

非常感谢!
另外有一个问题,聚会目录里面的文件,会有其他程序读取,且读完以后会挪着,这样的话在用rsync方式就不太可行了,有没有纯shell的方式呢。(我不太清楚怎么用纯shell时时将新产生的文件从源目录传走,这个是难点。

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-04-21 06:20:00
发表于 2018-03-27 14:48 |显示全部楼层
回复 5# chengchow

另外,要求尽量不采用免密!

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-04-21 06:20:00
发表于 2018-03-27 14:54 |显示全部楼层
回复 6# bomingjie

谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP