プログレスバーがあるUnixコピーコマンドですが、rsyncほど重くはありません


14

たくさんのファイルをコピーする必要があります。通常、rsyncを使用するのは、-aPオプションを渡すと、(a)処理するファイルの数と(b)個々のファイルがどれだけコピーされるかがわかるからです。

ただし、rsyncは、ファイルがコピーされたことを確認するためにチェックサムを使用して多くのことを行います。しかし、私は今それを本当に必要としません。ただし、通常cpのファイルには、上記の残りのファイル数は含まれていません。これは非常に役立ちます。

cp残っているファイルの数の進行状況を含むようなものはありますが、それほど重いものではありませんrsyncか?

回答:



6

これはあなたの提案に適したエイリアスですか?

cp_p() {
    rsync -WavP $1 $2
}

-W-デルタ転送アルゴリズムを使用しない
-aアーカイブモード
-v詳細
-P進行状況バーを表示し、部分的なファイルを保持する

私はいくつかの場所で見つけた別の選択肢。ただし、pv(pipeviewer)パッケージが必要です。

cp_pv() {
    pv -per $1 > $2
}

-p show progress
-e show eta
-r show rate
-n数値出力を表示

/ edit上記のエイリアスをテストし、動作することを確認できました。前にいくつかのタイプミスがありました


これは、ディレクトリではなく名前付きファイルへの1つのファイルのコピーのみをサポートしているようです。複数のファイルをコピーする場合はどうなりますか?またはディレクトリ?
アインポクルム

まあ、これらは単なるエイリアスなので、実際のrawコマンドを試して、何が機能するかを確認できます。rsyncはディレクトリやその他のパス指定をサポートしていると確信しています。エイリアスを簡単にカスタマイズして、特定の状況に合わせて機能させることができます。動作するようになったら共有してください。IIRC問題なく以前にディレクトリで使用しました。
ヴィジェイ

3

cp cmdで-vオプションを叩くか、ローカルホストに対してscpを使用することができます


-vは良いスタートであり、それは非常に便利だが、私は残っている正確にどのように多くのファイルが/ etc /にコピーされている詳細たい
ロリー・

2
次に、Stefan Wolffのソリューションが必要です。
エゴルジー2009


1

暗号化のオーバーヘッドでは過剰ですが、scpローカルで使用できます:

scp <file-from> <file-to>

コピー中に進行状況が表示されます。


OSXでは少なくとも、ローカルファイルが関係する場合に内部scpで使用cpするため、デフォルトではプログレスバーを表示しません。
スリッドは、モニカを復活させる

1

gcp素晴らしいツールです。ここにはPyPIパッケージがありますが、これはディストリビューションパッケージにもあります(たとえば、debian / ubuntu apt-get install gcpが仕事をします)。

gcpに関する素晴らしいチュートリアル記事もあります。

$ gcp -r Solaar / solaar2

7.53 MiB 100%のコピー| ############################# | 134.92 M / s時間:00:00:00
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.