高木のブログ

scpをやめてrsyncを使うための予習

· 64 words · 1 minutes to read
Tags: コマンド

リモートサーバーからファイルを持ってくる時にいつもscpコマンドを使っていたけど、scpコマンドは非推奨かつ時代遅れで今はrsyncコマンドがいいらしい

rsyncはアプリケーションをデプロイする時のコマンドの中で動いてるのを見かけたくらいでよくわかってない
ファイルのコピーというよりは同期のイメージだった

すぐすぐrsyncに移行というわけではないけど、scpでよく使うパターンだけ予習しておく

scpとrsyncのコマンドの違い 🔗

ファイル単体のコピーとディレクトリごとコピーの2つのパターンを確認する

事前準備 🔗

リモートサーバーに以下のような構造でディレクトリとファイルを用意しといた

$ tree .
.
└── sample_dir
    └── sample_file.txt

1 directory, 1 file

ファイル単体のコピー 🔗

$ scp [email protected]:~/sample_dir/sample_file.txt ./
$ rsync [email protected]:~/sample_dir/sample_file.txt ./

ディレクトリごとコピー 🔗

$ scp -r [email protected]:~/sample_dir ./
$ rsync -r [email protected]:~/sample_dir ./

まとめ 🔗

基本一緒だった
唯一違うところは、-rを付けた時にディレクトリ名の後にスラッシュがある場合

$ scp -r [email protected]:~/sample_dir/ ./
$ ls
sample_dir
$ rsync -r [email protected]:~/sample_dir/ ./
$ ls
sample_file.txt

scpはスラッシュを付けてもディレクトリごとコピーされるが、rsyncはディレクトリ内のファイルがコピーされる

参考 🔗

なぜscpの代わりにrsyncコマンドを使うのか? - たかけのブログ

Categories


Tags