Find

rsync:從管道中讀取文件列表

  • August 24, 2021

我可以將文件傳輸/tmp/filersync遠端伺服器:

rsync -R -av /tmp/file root@server:/

但是如何提供要從管道傳輸的文件列表?我嘗試將--files-from=選項與 一起使用/dev/stdin,但這不起作用:

echo /tmp/file | rsync -R -av --files-from=/dev/stdin root@server:/

(它也不適用於正常文件)

例如,我可以從管道中讀取 rsync,以便可以使用 find 的輸出嗎?

rsync即使從文件中讀取路徑名,您仍然需要同時指定源參數和目標參數:

echo /tmp/file | rsync -av --files-from=- / user@server:/

讀取的路徑名將rsync相對於/源目錄。-R使用 時會隱含該選項--files-from,並且可以使用 指定標準輸入-

也可以看看

您可能想問一個單獨的問題,關於您將輸出從傳遞findrsyncusing的意圖--from-file。可能有一種更安全的方式來做你打算做的事情。例如,您可能希望使用-print0with並將其與withfind配對。請參閱您的系統的手冊。-from0``rsync``rsync``find

引用自:https://unix.stackexchange.com/questions/631900