web-dev-qa-db-ja.com

プログレスバー/重複率?

バックアップ用にDuplicityを試し始めましたが、進行状況バーまたはパーセンテージを表示するオプションがなく、バックアップするファイルが表示されるだけであることがわかりました。アップロードする合計データ/アップロードされている現在のデータなどに基づいてプログレスバーを取得する方法はありますか?

10

この機能は、2013/08/22のバージョン .6.22 以降、(ついに)Duplicityに追加されました。この機能は、--progressoption でアクティブ化されます。

6
Nattgew

部分的な解決策:

進行状況は、pv関数を使用して監視できます。これは、大きなファイルをバックアップするときに特に役立ちます。多くの小さなファイルではそれほど便利ではありませんが、現在開いているファイルの進行状況とアップロード速度を確認できます。 pvはデフォルトではインストールされません。

pvの使用方法:最初にプロセスIDを取得し、次にそれをパラメーターとして入力しますto pv -d


例:

ps -ef | grep duplicity

PID(ユーザー名の後の最初の番号)を読み取り、次に

pv -d PID

またはワンライナー*:

*名前に「disk」が含まれているファイルをコピーしていると仮定します。 2番目のgrepは、検索結果を絞り込みます。

pv -d $(ps -ef | grep duplicity | grep disk | tr -s ' ' | cut -d ' ' -f 2)

どこ:

-dは、監視するプロセスのPIDを期待するようにpvに指示します。

ps -efマシンで実行されているプロセスのリストを出力し、

grep duplicity重複を含むプロセスリストからの行のみを取得し、

grep disk最初のgrepプロセスがps-efの結果に表示されないようにし、コピーされたファイルの名前の一部を探して、監視する特定のプロセスのみをリストするようにします。

tr -s ' ' ps -ef出力の複数のスペースを1つにトリミングして、カットが正しく機能するようにします。

cut -d ' ' -f 2は、出力(PID)から2番目のフィールドのみを切り取り、フィールド区切り文字として ''スペースを使用します。前のトリムがないと、カットは機能しません(ps -ef出力のスペースの量は可変です)。

pv -d in action

1
Ignacy