出力(進行)の前にrclone
カスタムテキストを追加したいです。インターネット検索の最後に、私は次の解決策を思いついた。
rclone sync "$SOURCE" "$DESTINATION" | while read line; do echo " $line"; done
ただし、実際にはrclone(--progressを使用)は最初にいくつかの行を取得し、実行中に更新します。ただし、これを使用すると、while
古い行を更新するのではなく、常に新しい行を追加します。この問題を解決する方法を知っている人はいますか?
デフォルトではrclone --progress output
毎秒更新されます。
Transferred: 0 / 0 Bytes, -, 0 Bytes/s, ETA -
Checks: 97 / 97, 100%
Elapsed time: 0.0s
希望の出力:
[My text] Transferred: 0 / 0 Bytes, -, 0 Bytes/s, ETA -
[My text] Checks: 97 / 97, 100%
[My text] Elapsed time: 0.0s
実際の結果while
は更新されませんが、以下を追加します。
[My text] Transferred: 0 / 0 Bytes, -, 0 Bytes/s, ETA -
[My text] Checks: 97 / 97, 100%
[My text] Elapsed time: 0.0s
[My text] Transferred: 0 / 0 Bytes, -, 0 Bytes/s, ETA -
[My text] Checks: 97 / 97, 100%
[My text] Elapsed time: 0.0s
[My text] Transferred: 0 / 0 Bytes, -, 0 Bytes/s, ETA -
[My text] Checks: 97 / 97, 100%
[My text] Elapsed time: 0.0s
[My text] Transferred: 0 / 0 Bytes, -, 0 Bytes/s, ETA -
[My text] Checks: 97 / 97, 100%
[My text] Elapsed time: 0.0s
ベストアンサー1
あなたの質問を理解したかどうかわかりません。同じ行を継続的に更新したい場合は、次のように使用できます。
rclone sync "$SOURCE" "$DESTINATION" | while read line; do echo -en " \r$line"; done
-n 末尾の改行を印刷するためにエコーを停止します。
-e はバックスラッシュシーケンスを評価するよう echo に指示します。