【发布时间】:2018-03-10 00:57:31
【问题描述】:
尝试运行此 cmd 时:
ssh user@host " cp -f /path1/`cat /path2/file.txt | awk -F : '{printf $4}' `* ../ "
知道了:
cat: /path2/file.txt: 没有这样的文件或目录
请注意,当直接在服务器中执行它时,它可以工作
感谢您的建议
【问题讨论】:
-
作为第一个指针:我猜你的本地 shell 解释了
cat ...。这意味着反引号 (``) 之间的所有内容都将被替换为您计算机上该命令的输出(我认为甚至在 ssh 进程启动之前)。 -
请提供更多信息,文件应该是什么样子
-
对 SSH 参数使用单引号。并且根本不要使用反引号。它们已被弃用。请改用
$()。 -
@ceving 这样做会显示一个错误中继到 awk