web-dev-qa-db-ja.com

FTPを使用してフォルダ全体をアップロードできますか?

FTPを使用してフルフォルダをアップロードする必要があります。フォルダとその内容のすべてを一度に転送するためのオプションはありますか?

28
Shalu

標準のコマンドラインFTPクライアントを使用している場合、MPUTコマンドを使用すると、(シェルグロブスタイル)パターンに一致するすべてのファイルを転送できるので、MPUT *は現在のディレクトリ内のすべてのファイルを送信します。パターンにマッチするファイルを検索するためのMGETもあります。

デフォルトでは、MPUTMGETは両方とも、転送する前に各ファイルを転送するかどうかを尋ねます。あなたはおそらく "Prompt"コマンドでプロンプトを消すことを望みます(引数なし、それはトグルです)。

23
Dave Sherohman

Ncftpputを使うことができます。以下をせよ:

  1. Ncftpをインストールします。

    yum install ncftp
    

yumは小文字です。

あるいは

    apt-get install ncftp

2.以下のコマンドを実行してください。

    ncftpput -R -v -u "ftp-username" ftp.website.com ftp-upload-path local-path/*
22
Mohamed BK

LeechFTPやFileZillaなどのFTPクライアントを使用してください。多くの人がCuteFTPで誓うが、それは私が最後にチェックしたシェアウェアだ。すべてのディレクトリ構造を含むフォルダ全体の転送をサポートしています。

8
Joshua Nurczyk
  1. ユーザー/クライアントにフォルダを圧縮させる
  2. zipファイルをアップロードする
  3. フォルダサーバー側を解凍します
5
Chase Florell

私のような他のWindows初心者のための簡単なチュートリアルはここに巻いています:

フォルダ全体を(その中にすべてのサブフォルダとファイルを含めて)アップロードする最も簡単な方法は次のとおりです。

  1. ダウンロード NcFTPクライアント (無料ですが、寄付できます) このリンクから .
  2. リストから NcFTP Client 3.2.5 for Microsoft Windows を選択します。
  3. インストールしてください。
  4. 完了すると、チェリーアイコンの付いた小さなCMDウィンドウがポップアップします。あなたはそれを必要としません。
  5. 標準のCMDウィンドウを開いて、次のように入力します。
    ncftpput -u * yourUserNameHere * -p * yourUserPasswordHere * -R * www.yourWebsite.com * /
     _C:\ yourFolderDirectoryHere \\ * _
    (1行として).

ご了承ください:

  • -Rは "recursive"のフラグです。これにより、コマンドはすべてのサブフォルダを再帰的にコピーします。
  • /(スラッシュ)はあなたのウェブサイトのルートディレクトリです
  • C:\yourFolderDirectoryHere\*は内部のすべてを選択しますC:\yourFolderDirectoryHere
2
DBS

私は答えを提供するつもりです - それは純粋な総当り力で、ほんの少しの間エレガントではありませんでしたが - 私にとってコマンドラインで働いた唯一のものでした。ファイルのリストを作成し、それらをスクリプトに入れました。

ファイルのリストを生成します。

find my-dir -exec echo "put /Users/username/"{} {}  \;

それらをコピーしてスクリプトに貼り付けます。

#!/bin/bash

hostname="my-ftp-Host"
username="username"
password="password"
ftp -in $hostname <<EOF
quote USER $username
quote PASS $password

binary
cd 123456
{COPY THE LIST HERE}
quit
EOF
2
dgig

これをチェック してください

プログラムで サーバー上にフォルダを作成し 、すべてのファイルをその新しいフォルダにアップロードすることもできます。

1
BrandonZeider

FileZillaはこれに最適です。ダウンロード/インストールしたくない場合は、Internet Explorerを使用してください。詳細オプションに進み、Enable FTP folder view (outside of Internet Explorer)を選択します。それから、あなたのFTPサーバにエクスプローラウィンドウを向け、エクスプローラウィンドウ間でファイルやフォルダをドラッグアンドドロップすることができます。

0
Jim Fell

Firefoxには FireFtp というプラグインがあり、これはNice ftpクライアントです。

0
jet

私の答えは@dgigの答えのバリエーションです。

すべてのファイルを一覧表示し、それらをファイルに保存することができます(putコマンドを含む)。

find my-dir -exec echo "put /Users/username/"{} {} > list.txt \; 

そしてsftpを使ってファイルを処理します。

sftp -C -b sftpbatchfile.txt name@server

-Cは圧縮用、-bはバッチファイル用です

0
Juraj.Lorinc

ターゲットディレクトリはZipファイルです。以下のコードを使用して、完全なZipファイルをftpサーバーにコピーできます。

//Taking source and target directory path
string sourceDir = FilePath + "Files\\" + dsCustomer.Tables[0].Rows[i][2].ToString() + "\\ConfigurationFile\\" + dsSystems.Tables[0].Rows[j][0].ToString() + "\\XmlFile";

string targetDir = FilePath + "Files\\Customers\\" + CustomerName + "\\" + SystemName + "\\";                                                                                       
foreach (var srcPath in Directory.GetFiles(sourceDir))
{
    //Taking file name which is going to copy from the sourcefile                                              
    string result = System.IO.Path.GetFileName(srcPath);

    //If that filename exists in the target path
    if (File.Exists(targetDir + result))
    {
        //Copy file with a different name(appending "Con_" infront of the original filename)
        System.IO.File.Copy(srcPath, targetDir + "Con_" + result);
    }
    //If not existing filename
    else
    {
        //Just copy. Replace bit is false here. So there is no overwiting.
        File.Copy(srcPath, srcPath.Replace(sourceDir, targetDir), false);
    }
}         
0
user606353