Linuxでファイルコピー時に進捗状況を確認する6つの方法
Pocket

Linuxで普通にcpコマンドを利用していると、そのコピーの進捗状況がわからない事が多い。
コピーの進捗状況を調べるには、どうすればよいのだろうか?

1.cp実行時に「-v」オプションを用いる

正確な進捗状況(各ファイルごとに何%までコピーが完了したか)はわからないが、「どのファイルまではコピーが完了したか」を把握するのであれば、cpコマンドで「-v」オプションを利用することで、今どのファイルをコピーしているのかが把握出来る。

20150711_000003

 

2.cvコマンドを利用する

以前こちらで紹介したcvコマンドを利用することで、マシン上で実行されているcp,mvの進捗状況を確認することが出来る。

cv

20150711_000000

 

「-M」オプションを付与することで、モニタモードで監視することも出来る。

cv -M

20150711_000002

 

ただ、cpをフロントで実行している場合、別途ターミナルをアップする必要があるので注意。
バックグラウンドで実行させているならば、これで進捗状況を監視することが可能だ。

3.cpコマンドの代わりにrsyncコマンドを利用する

cpコマンドを実行する代わりに、rsyncコマンドを用いる事で、進捗状況を画面上に出力することが可能だ。

rsync -av --progress コピー元 コピー先

20150711_000006

Sponsored Links

4.cpコマンドの代わりにpvコマンドを利用する

cpコマンドの代わりに、pvコマンドを利用することで、cpプロセス全体の進捗状況を確認することが出来る。

pv コピー元 > コピー先

20150711_000009

 

5.cpコマンドの代わりにvcp、gcpコマンドを利用する

cpコマンドの代わりに、vcp、gcpコマンドという、進捗状況を出力するコマンドを利用する方法もある。

vcp -Rv コピー元 コピー先

20150711_000018

 

dbus-launch gcp -rv コピー元 コピー先

20150711_000023

 

6.強化版のcpコマンド・mvコマンドを利用する

以前にこちらの記事でも触れたが、LinuxのCoreutilsのソースに有志の作成したパッチを当てることで、既存のcpコマンド、mvコマンドにプログレスバーの出力オプションを付け加える事も出来る。

20140807_000002

 

Pocket

Written by blacknon

インフラ系のSE。一時期はプログラマ。 仮想化とオープンソースに興味あり。一日中寝てたい今日このごろ。 スペインとかで働きたいなぁ…(シエスタがあるので)

Leave a Comment

メールアドレスが公開されることはありません。