--progress引数を使用してrsyncスクリプトを呼び出すmacrubyアプリを作成しようとしていますが、rsyncが進行状況を表示する方法は、出力に新しい行を追加するのではなく、同じ行を変更することです。このデータを取得するにはどうすればよいですか。 ?
2 に答える
3
Rsync では、次の--log-format
オプションを使用して、表示される情報の形式を変更できます。
--log-format=FORMAT
This allows you to specify exactly what the rsync client outputs to the user on a per-file basis. The format is a text string containing embedded
single-character escape sequences prefixed with a percent (%) character. For a list of the possible escape characters, see the "log format" set-
ting in the rsyncd.conf manpage. (Note that this option does not affect what a daemon logs to its logfile.)
Specifying this option will mention each file, dir, etc. that gets updated in a significant way (a transferred file, a recreated symlink/device,
or a touched directory) unless the itemize-changes escape (%i) is included in the string, in which case the logging of names increases to mention
any item that is changed in any way (as long as the receiving side is at least 2.6.4). See the --itemize-changes option for a description of the
output of "%i".
The --verbose option implies a format of "%n%L", but you can use --log-format without --verbose if you like, or you can override the format of its
per-file output using this option.
Rsync will output the log-format string prior to a file's transfer unless one of the transfer-statistic escapes is requested, in which case the
logging is done at the end of the file's transfer. When this late logging is in effect and --progress is also specified, rsync will also output
the name of the file being transferred prior to its progress information (followed, of course, by the log-format output).
より使いやすいものにその場で構成できるはずです。
popen3
また、を使用した場合は、転送された割合を取得し、それを使用して独自の進行状況バーを作成できるはずです。
于 2010-11-16T18:29:36.633 に答える
1
ブロック表記でIO.popenを使用する必要があります
于 2010-11-16T11:38:45.190 に答える