LoginSignup
8
11

More than 5 years have passed since last update.

SFTPのメモ

Last updated at Posted at 2016-01-29

ローカルのMacから、あるサーバーのファイルを別のサーバーに送りたい時、
SSHFSでマウントするためのaliasを作るのもめんどくさくて、
SCPコマンドを実行するものめんどくさくて、
Filezillaかなんかのクライアントでやるのもめんどくさそうだと思って、
SFTPをterminalからやったら簡単便利だったのでメモ。

違い

SCP,SFTPの違いは以下を見ればわかる
http://qiita.com/cyberblack28/items/275c5df386a50b224765
SFTPとFTPSの違いは以下を見れば分かる
http://qiita.com/kasei-san/items/bf766e6c2ececa4c3905

SSHFSはローカルにリモートのFSをマウントする

穴兄弟の使い分け方

どれもssh config読みこんでくれて同じポートに安全に接続してくれて滅茶便利なのだが、
以下の用に使い分けるのが正しいのか?

コマンド 使いみち
SSH リモートシェル叩きたい
MOSH 接続が切れないでリモートのシェル叩きたい
SCP リモートシェル叩かずにファイルの移動をしたい
SFTP リモートとローカルのシェル叩いてに柔軟にファイルの操作をしたい
SSHFS リモートのFSをローカルにマウントしてローカルから操作したい

SFTPのコマンド備忘録

※ lがlocalコマンドのプレフィックスになる

用途 コマンド
接続 $ sftp <host> # ssh/configのhost名
リモートのパス $ pwd
ローカルのパス $ lpwd
リモートからローカルにDL $ get <remote filename> # -rで再帰的な感じ
ローカルからリモートにアップロード $ put <local filename> # -rで再帰的な感じ

FTPコマンドの備忘録

用途 コマンド
接続 $ ftp <host> # IDとPWをその後入力する
リスト $ ls
チェンジディレクトリ $ cd
ファイルのアップロード $ put
ファイルのダウンロード $ get
正規表現を使ってファイルのアップロード $ mput <regexp>
正規表現を使ってファイルのダウンロード $ mget <regexp>

一気にフォルダごとDLする方法

sh
$ wget -r --user="user@login" --password="Pa$$wo|^D" ftp://server.com/

その他のコマンドは以下にある
http://answers.stat.ucla.edu/groups/answers/wiki/7a848/Using_SSH_and_SFTP_in_Mac_OS_X.html

参考文献

https://www.digitalocean.com/community/tutorials/how-to-use-sftp-to-securely-transfer-files-with-a-remote-server
http://stackoverflow.com/questions/113886/how-do-you-recursively-ftp-a-folder-in-linux

8
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
11