我想ssh服务器运行从C程序编译的二进制文件,但显然ssh只能发送bash命令。
我正在考虑制作一个shell脚本来运行二进制文件,这样我就可以通过ssh调用脚本了。这是可行的吗?
通常这会起作用
$./mycprogram
但我发现这不起作用
$ssh user@node ./mycprogram
虽然通过相同的ssh执行的其他bash命令可以正常工作
从其他服务器(通过ssh)调用mycprogram
的正确方法是什么?
答案 0 :(得分:1)
如果是" C对象"你的意思是"一个C程序",它必须先编译才能运行。 是 C解释器,但大多数C程序都是为编译而编写的。
如果程序已编译,您可以像运行任何其他程序一样运行它,方法是从bash脚本中按名称调用它。许多常规" shell命令"实际上是编译过的C程序(像ls
,cp
等等)。
当然,您需要确保二进制文件(已编译的C程序)在目标计算机中可用,并且它位于适当的位置。
答案 1 :(得分:0)
可能取决于目录。
电子。 G。如果你ssh到其他主机,用cd mydir
更改目录,然后执行./myprogram
,你必须使用
ssh myhost mydir/myprogram
以便找到该文件。