我已登录服务器(使用 Putty)。从那里我使用 FTP 连接到另一台服务器。我想使用 mput 将多个文件夹从第一台服务器复制到第二台服务器。
喜欢:
ftp> mput folder1 folder2 folder3
Run Code Online (Sandbox Code Playgroud)
但我得到“文件夹 1:不是普通文件。”......等等。这些文件夹中的每一个都有子文件夹、文件(有些是二进制文件,有些不是)。
我怎样才能在不压缩这些东西然后转移的情况下完成我想要的?
Phi*_*lds 22
命令行 FTP 非常原始。
您不能递归地将文件/文件夹发送到远程站点。
如果要在远程端重新创建与本地相同的目录结构,则需要手动创建mkdir
每个路径并用于mput *
将该目录中的所有内容发送到远程端。
使这更容易的两个选项:
停止使用原始 FTP 命令(ncftp 是一个不错的选择)
使用 tar 对文件夹进行 tar 压缩,发送文件并在远端提取。
小智 17
我做了一个 bash 脚本:
#!/bin/bash
ftp_site=ftp.yoursite.net
username=my_user_name
passwd=my_password
remote=/path/to/remote/folder
folder=$1
cd /path/to/local/folder/$folder
pwd
ftp -in <<EOF
open $ftp_site
user $username $passwd
mkdir $remote/$folder
cd $remote/$folder
mput *
close
bye
Run Code Online (Sandbox Code Playgroud)
并用
find . -type d -exec ./recursive-ftp.sh {} \;
Run Code Online (Sandbox Code Playgroud)
似乎工作。
归档时间: |
|
查看次数: |
142724 次 |
最近记录: |