使用管道提供 RDiff 基本文件會導致非法查找錯誤

使用管道提供 RDiff 基本文件會導致非法查找錯誤

如果我執行以下 rdiff 命令

rdiff patch basefile patchfile outputfile

一切都按預期工作,但是,如果我嘗試使用 stdin 提供像這樣的基本文件

xz -d -c basefile.xz | rdiff patch - patchfile outputfile

我收到以下錯誤

librsync: ERROR: (rs_file_copy_cb) seek failed: Illegal seek
librsync: ERROR: (rs_job_complete) patch job failed: IO error
librsync: ERROR: IO error

手冊頁明確指出

In every case where a filename must be specified, - may be used instead to mean either standard input or standard output as appropriate.

手冊頁不正確,還是我做錯了什麼?是否可以使用管道向 rdiff 提供基本文件?還有其他方法可以透過 xz 命令向 rdiff 提供基本文件而不建立臨時文件,這不是我想要完成的任務的選項嗎?

相關內容