如何创建将使用FTP将文件复制到另一台服务器的脚本?

时间:2016-11-04 14:29:41

标签: python bash networking ssh ftp

我是网络工程师学徒,并且已经设置了一个任务,它将从服务器目录复制文件并使用FTP将其复制到另一个位置。基本上这些是我要采取的步骤:

  1. 登录NMS(Linux Box)
  2. 将目录更改为/ usr / lib / rancid / bin / clogin
  3. Sudo rancid
  4. clogin(SVC的IP地址)
  5. 将目录更改为磁盘:/ ftp / reports / rogueaps
  6. 使用FTP将上次创建的文件复制到(IP地址)
  7. 正如您所知,我对此非常陌生,只有大约2个月的网络经验,对编码和脚本知之甚少。没有急于创造这个,时间就在我身边。

    此脚本每天需要运行一次。我不希望任何人为我创建脚本,但指向我正确的方向将不胜感激。我也可以使用我选择的任何语言,我认为python可以很好地学习。

    谢谢

1 个答案:

答案 0 :(得分:0)

通常,您应该尽量避免使用FTP。如果你可以scp到远程主机,那肯定会更好。

如果您需要坚持使用ftp,并且如果您有lftp作为客户端可用,您可能会这样做:

#!/bin/bash
nwd=/ftp/reports/rogueaps
user=rancid
passwd=VeRySecR3t
host=ip_of_SVC

cd /usr/lib/rancid/bin/clogin
lftp -u $user,$passwd $host <<EOF
cd $nwd
put $f
EOF

并将其放在用户rancid的crontab中。

这当然只是指向你能做什么的指针。通常,将密码直接放在脚本中是个坏主意。如果您有勇气,可以尝试从脚本中的.cloginrc获取uid /密码。

如果那不是您正在寻找的,那么您应该考虑期待。 Clogin基本上是一个执行某些登录的expect脚本。