我正在尝试通过SSH在远程服务器上声明一个函数。
funcA () { echo 'do something'; }
ssh $somewhere " $(declare -f funcA); funcA "
我一直在接受:
Badly placed ()'s.
{: Command not found.
为什么?
答案 0 :(得分:0)
这是因为远程用户将其登录shell设置为csh
并且您提供了bash
代码。这就像尝试使用C编译器编译Java代码,或将Python代码粘贴到PHP中一样。
您可以改为csh
运行bash
,然后输入命令bash:
ssh $somewhere "bash -s" <<< " $(declare -f funcA); funcA "