rsync 从 bash 数组而不是文件读取 `--files-from`

rsync 从 bash 数组而不是文件读取 `--files-from`

是否可以让 rsync 从活动脚本中的数组而不是附带文件中读取要包含的文件列表?

## declare an array variable
declare -a files=("path" "path" "path")

rsync --files-from=${files[@]} source destination

有没有更好的方法?我只想管理一个脚本文件。

答案1

您可以执行:

`rsync --files-from=<( printf "%s\n" "${files[@]}" ) source destination
  • <()wil 打开一个管道并用内部命令的内容填充它。它返回一个文件描述符

  • printf "%s\n" "${files[@]}"在不同的行中回显每个文件名

相关内容