rsyncチートシート
[History] [Last Modified] (2018/12/20 16:10:48)
Recent posts
What is this site?
A platform for makers to share their knowledge.

Share your robots/products with others.
New robots/products

概要

rsyncはディレクトリの同期をローカルマシン内もしくはリモートマシン間で行うためのコマンドです。なお、名前のよく似た、メモリ内のキャッシュをディスクに強制的に書き出させるsyncコマンドとは関係ありません。

チートシート

ディレクトリ内のファイルのコピー

$ rsync -av sourcedir/ destdir/
(or $ rsync --archive --verbose sourcedir/ destdir/)

ディレクトリ全体のコピー

スラッシュがない ('sourcedir/' ではなく 'sourcedir') 場合はディレクトリそのものがコピーされます。

$ rsync -av sourcedir destdir/

コピーではなく同期

コピー元にないファイルがコピー先にあれば削除されます。完全同期です。

$ rsync -av --delete sourcedir/ destdir/

特定のファイルをコピーまたは同期対象から除外

ログファイルなどを除外して同期したい場合には '--exclude' オプションを利用します。

$ rsync -av --exclude 'log.bk' sourcedir/ destdir/

SSHでリモートマシンのディレクトリにコピー

$ rsync -av sourcedir/ username@example.com:/path/to/destdir/

空ディレクトリを無視 -m しつつ、特定のファイルのみをコピー

rsync -avm --include='*/' --include '*.txt' --include '*.tar.gz' --exclude '*' vagrant:/data/db .

ポート番号の変更

-e 'ssh -p 12345'
Related pages
    概要 Capistranoはサーバの遠隔操作を自動化する多目的なツールです。以下では特に Rails4 を Capistrano3 でデプロイする基本的な方法をまとめます。Rails の場合は Capistrano の設定が gem で提供されているため、Capistrano の知識がなくても基本的なデプロイはできます。独自にカスタマイズしたい場合など、本ページの内容を越えるものは