Ini*_*ian 10
您可以使用xargs或正是此要求。您可以使用-I作为从管道接收的输入的占位符,做
echo "myserver:${HOME}/dir/2/" | xargs -I {} rsync -r "{}" /local/path/
Run Code Online (Sandbox Code Playgroud)
(或)使用~不带双引号的它不会扩展到HOME目录路径。
echo myserver:~/dir/2/ | xargs -I {} rsync -r "{}" /local/path/
Run Code Online (Sandbox Code Playgroud)
这个
rsync -r "$(echo myserver:~/dir/2/)" /local/path/
Run Code Online (Sandbox Code Playgroud)
是最简单的方法。
管道将标准输出与标准输入连接起来。在这里,您希望输出转到一个参数,因此除了经典管道之外,您还需要其他东西。
那个东西是命令替换($())。