gpt4 book ai didi

linux - 如何在 Linux 上自动进行 FTP 文件传输?

转载 作者:太空宇宙 更新时间:2023-11-04 05:42:24 24 4
gpt4 key购买 nike

我正在尝试在 Linux 上自动进行 FTP 文件传输,以便在我们的 Intranet 上保留一些备份。我的主要问题是我无法使用 SCP,因为 SHH 破坏了我们的 samba 服务器和其他东西,所以我们只能使用 vsftp。

我可能要做的是创建一个 bash 每周在 Cron 中运行。这是我在网上找到的一个例子:

#!/bin/bash
HOST='your.ftp.site'
USER='remoteusername'
PASSWD='remotepasswd'

ftp -n -v $HOST << EOT

ascii
user $USER $PASSWD
prompt
[COMMANDS GO HERE]
bye
EOT

但我真的找不到除此之外可以使用哪些代码在两台计算机之间传输文件。这是一个简单的 CAT 吗?

非常感谢任何帮助,谢谢!

最佳答案

有几种可能:第一:使用lftp。当然,您应该阅读精美的手册,但作为示例:

echo "mirror --reverse --delete" | lftp -u $username,$password $mysite

或者使用期望:

spawn ftp mysite
expect "Login:"
send "username\r"
expect "ssword:"
send "S0m3ting\r"
expect "ftp>"
send "prompt\r"
expect "ftp>"
send "cd somewher\r"
expect "ftp>"
send "mget allfiles.*\r"
expect "ftp>"
send "mput loadsofotherfiles.*\r"
expect "ftp>"
send "bye\r"

(注意:这将作为第一个测试,但您不应该在生产中像这样运行)

另请注意,man ftp 将为您提供[COMMANDS(即)转到此处] 的列表。

顺便说一下:ssh 和 SAMBA 应该在同一台服务器上运行良好。您可能想研究一下那里出了什么问题。

关于linux - 如何在 Linux 上自动进行 FTP 文件传输?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47717271/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com