GNU/Linux >> Linux の 問題 >  >> Linux

sftp でディレクトリをアップロードしますか?

sftp がこれを行う理由はわかりませんが、宛先ディレクトリが既に存在する場合にのみ再帰コピーを実行できます。では、これを実行してください...

sftp> mkdir bin
sftp> put -r bin

修正 :私は当初、OpenSSH が put -r をサポートしていないと誤って主張しました .それはそうですが、非常に奇妙な方法でそれを行います。ソース ディレクトリと同じ名前の宛先ディレクトリが既に存在することを期待しているようです。

sftp> put -r source
 Uploading source/ to /home/myself/source
 Couldn't canonicalize: No such file or directory
 etc.
sftp> mkdir source
sftp> put -r source
 Uploading source/ to /home/myself/source
 Entering source/
 source/file1
 source/file2

特に奇妙なのは、宛先に別の名前を付けた場合にもこれが適用されることです:

sftp> put -r source dest
 Uploading source/ to /home/myself/dest
 Couldn't canonicalize: ...
sftp> mkdir dest
sftp> put -r source dest
 Uploading source/ to /home/myself/dest/source
 Couldn't canonicalize: ...
sftp> mkdir dest/source
sftp> put -r source dest
 Uploading source/ to /home/myself/dest/source
 Entering source/
 source/file1
 source/file2

より適切に実装された再帰 put について 、PuTTY psftp を使用できます 代わりにコマンド ライン ツールを使用します。 putty-tools にあります Debian (およびおそらく Ubuntu) の下のパッケージ。

あるいは、GUI を使用したい場合は、Filezilla があなたの望むことを行います。


rsync の使用に興味があるかもしれません 代わりは。そのためのコマンドは

 rsync --delete --rsh=ssh -av bin/ remote-ip-or-fqdn:/home/earlz/blah/bin/

これにより、bin/ のすべてがコピーされます /home/earlz/blah/bin/ のリモート サーバーに配置します。 .追加の利点として、リモート側のファイルが変更されていないかどうかを最初に確認し、変更されていない場合は再送信しません。さらに、-z オプションを追加すると、圧縮されます。


Linux
  1. systemd-homedを使用してLinuxユーザーのホームディレクトリを管理する

  2. 末尾にスラッシュが付いたディレクトリをリストするためにLsを取得するにはどうすればよいですか?

  3. 検索コマンドのプルーニングディレクトリに問題がありますか?

  1. LinuxでSFTPクライアントを操作する方法–10sftpコマンド

  2. SFTPを使用してFilezillaでクラウドサーバーに接続する

  3. ソース ファイルが異なるディレクトリにある Makefile

  1. Linux – SuidはLinuxのディレクトリに影響を与えませんか?

  2. Rsyncを使用してディレクトリ/フォルダで変更された日付を保持しますか?

  3. ワイルドカードを使用してディレクトリを再帰的に削除するにはどうすればよいですか?