【问题标题】:Java Create a folder using ip addressJava使用ip地址创建文件夹
【发布时间】:2017-05-27 20:02:38
【问题描述】:

我需要在我的远程机器上创建一个文件夹。出于测试目的,我正在尝试使用我的机器 IP 地址在我自己的机器上创建文件夹。我的 Ubuntu 机器 IP 地址是 XX.X.X.XX。我想使用以下 java 代码 sn-p 在我的主目录上创建一个名为 E book 的文件夹。但以下不会创建文件夹。请帮忙。

boolean folder = new java.io.File("//XX.X.X.XX/home/EBook").mkdirs();

System.out.println(文件夹);

【问题讨论】:

  • 我觉得没那么容易,你应该看看如何通过SSH来做。

标签: java


【解决方案1】:

您可以通过在 java 中执行一个进程来完成此操作:

BufferedReader stdError = null;
try
{
    // change the you and server accordingly
    String command = "ssh you@server \"mkdir /home/name/EBook\"";
    Process p = Runtime.getRuntime().exec(command);

    stdError = new BufferedReader(new InputStreamReader(p.getErrorStream()));

    // read any errors from the attempted command
    System.out.println("Here is the standard error of the command (if any):\n");
    String s = null;
    while ((s = stdError.readLine()) != null)
    {
        System.out.println(s);
    }
}
catch (IOException e)
{
    e.printStackTrace();
}
finally
{
    if (stdError != null)
    {
        try
        {
            stdError.close();
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
    }
}

【讨论】:

  • 嗨迈克尔,感谢您的回复。我确实将“you”更改为 root,将“server”更改为我的 ip 地址,但它没有创建文件夹。它不显示任何错误,也不做任何事情。
  • 先尝试在java之外运行ssh命令。例如,只需尝试ssh root@server 看看您是否可以访问它。您可能需要先进行一些设置以允许从您的机器 ssh 到远程服务器。我还将在我的帖子中添加如何读取运行命令产生的任何错误。
  • @MichaelMarkidis - 你以为他在本地安装了 ssh 命令,但可能不是。
  • @Tenzin,在远程机器上创建文件夹的目的是什么?如果你能解释你想要达到的目标,也许还有其他选择?
  • @Tenzin,听起来您想使用 SSH 登录并在远程 Linux 机器上创建文件夹。尝试使用适当的库,如果出现任何问题,它将给出适当的响应。看看这篇文章,看看是否有帮助stackoverflow.com/questions/995944/ssh-library-for-java
猜你喜欢
  • 1970-01-01
  • 2012-08-10
  • 2017-09-13
  • 2014-05-28
  • 2011-08-26
  • 2012-02-05
  • 1970-01-01
  • 2021-10-06
  • 2013-10-31
相关资源
最近更新 更多