Sftpからget
コマンドを使用しようとすると、通常のファイルではないというエラーが表示されます。これを回避する方法はありますか?
sftp -r
を使用してホストに接続し、次にget
を使用してディレクトリに接続できます。接続時に-r
を使用し忘れた場合は、get -r
を使用できます。
sftp -r me@somehost
または
sftp> get -r tmp/
Fetching /home/me/tmp/ to tmp
Retrieving /home/me/tmp
/home/me/new.orig.dmp 100% 417KB 416.8KB/s 00:00
/home/me/untangle.dmp 100% 398KB 398.3KB/s 00:00
/home/me/repos.orig.dmp 100% 415KB 415.2KB/s 00:00
/home/me/me-untangle.dmp 100% 32KB 32.4KB/s 00:00
sftp>
常に-r
をsftp
に渡すようにしたい場合は、~/.bashrc
または同様のものにエイリアスとして追加します。
alias sftp="sftp -r"
man 1 sftp
から
-r Recursively copy entire directories when uploading and download‐
ing. Note that sftp does not follow symbolic links encountered
in the tree traversal.
.........
get [-Ppr] remote-path [local-path]
........
If either the -P or -p flag is specified, then full file permis‐
sions and access times are copied too.
If the -r flag is specified then directories will be copied
recursively. Note that sftp does not follow symbolic links when
performing recursive transfers.