如何从C程序和Ubuntu OS从远程设备读取文件?

时间:2015-06-24 02:59:41

标签: c linux ubuntu ssh

我正在尝试读取位于远程设备的文件,它有Debian OS。 我的C程序在Eclipse上运行在Ubuntu上。这两个设备通过USB线连接。我可以使用我的控制台中的ssh访问远程设备,例如ssh root@192.168.7.2。 现在我喜欢从我的C程序访问远程设备根目录下的文件。我试着FILE *ptr = popen("ssh root@192.168.170.155:/1.jpg", "r");。它不起作用。 有文件访问权限的正确方法是什么,以便我可以从我的C程序中读取文件?或者有更好的方法吗? 感谢

1 个答案:

答案 0 :(得分:0)

我担心它并不那么简单。 unix Random r = new Random(); for(int i = 0; i<rows; i++) { for(int j = 0; j<columns; j++) { array[i][j] = r.nextInt(900) + 100; System.out.print(array[i][j] + " "); } System.out.println(); } file API用于处理本地文件 - 即。可以由运行的OS实例访问的文件。为了读取远程机器上的文件 - 可以通过ssh访问,更加复杂。通常 - 选择是

  1. 运行NFS - 其中远程计算机是NFS服务器而您的计算机是NFS客户端,然后您可以在本地计算机上正常执行pipeopenread。< / LI>
  2. 其他选项是以编程方式实现write或其他协议的功能。稍微多一些。所以该选项不可用。
  3. 根据您要对文件执行的操作,可能有第三个选项 - 在您的c程序中的ssh函数中运行scp,然后在本地复制文件并执行任何操作想要做的文件。

    这些是广泛的选择。如果您可以明确说明 - &#39;您要对文件数据做什么&#39;,可能还有另一种选择。