lftpでファイル転送系をまとめる

lftpについて 概要 次の3点: ファイル転送系のCUIでいろいろ使える(FTP, SFTP, FTPSなどファイル転送系のプロトコルはだいたいサポートされている mirrorコマンドでリモート/ローカルでファイル・ディレクトリを丸ごと同期することができる(rsync) 並列転送をサポートしているので,LONG FAT PIPEな環境でも高速にファイルが転送できる. インストール だいたいのプラットフォームでパッケージが用意されている. macOSだとbrewで,ubuntuだとapt-getで瞬時に導入できる.おそらくCentOSのyumでもパッケージが提供されているはず. macOS$ brew install lftp ubuntu$ sudo apt-get install lftp Hellow World! 1. FTP系のコマンド FTPコマンドがカバーされている. get put mput lcd !pwd その他もろもろ ということで,FTP意外のプロトコルを使う場合でも,基本的にコマンド操作を統一化できる.webホスティングサービスによっては,ファイル転送で許可されているプロトコルが異なるのだが,lftpを使っておけばそこら辺を吸収することができる.引越しが楽になる. あとは,SFTPがサポートされているので,サーバ側にsshd(+sftpの許可設定)を立てておけば,セキュアにファイル転送が可能になるのがうれしい.tab補完も効いているので,shellでインタラクティブに作業するときには助かる. 例えばsshdが立っているリモートのサーバ(remote.site.com)からhtmlファイルをダウンロードする(mgetする)には,以下のような感じになる. $ lftp -u user123 sftp://remote.site.com Password: <= パスワード入力 lftp [email protected]:~> ls drwxr-xr-x 4 user123 user123 4096 Mar 21 13:56 . -rw------- 1 user123 user123 9296 May 31 12:54 .bash_history -rw-r--r-- 1 user123 user123 220 Jan 5 00:03 ....

May 31, 2017