【发布时间】:2018-01-26 00:00:27
【问题描述】:
我正在 Windows PC 上编写一个 Java 程序,它需要与我们公司的 Unix 机器上的多个应用程序通信。
我开发的程序包含一个带有 JButton 的 Swing 接口。目前,当我点击按钮时,我可以在我的机器上选择一个目录,如“C:\Users\MyUserName\Documents”。这是代码示例:
selectButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// Choose a directory
JFileChooser chooser = new JFileChooser();
chooser.setCurrentDirectory(new java.io.File("."));
chooser.setDialogTitle("choosertitle");
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
chooser.setAcceptAllFileFilterUsed(false);
if (chooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
System.out.println("getCurrentDirectory(): " + chooser.getCurrentDirectory());
System.out.println("getSelectedFile() : " + chooser.getSelectedFile());
} else {
System.out.println("No Selection ");
}
}
});
现在我想在另一台使用 Unix 的机器上选择一个目录(假设机器名称是“unix-service”),而不是我本地机器上的一个目录。所以当我点击按钮时:
我需要知道我们公司的用户组才能继续。在 Unix 终端中,我们可以使用命令“echo $WORK_GROUP”来完成。我想将此用户的组保存为变量“user_group”
我想在那个 Unix 机器上选择一个目录“workgroug/user_group/username/”。
如何使用 ssh 命令和调整我的代码来做到这一点?
我希望一切都清楚并得到解释,如果您需要更多信息,请随时问我。感谢您的宝贵时间。
【问题讨论】:
-
投票结束过于广泛。您知道可能的解决方案(在 Java 中使用 SSH),但没有尝试实现它。
-
实际上,我发现了一些 ssh 示例,但似乎没有一个可以做我想做的事或帮助我做我想做的事。这就是为什么我要求确切的问题有一些提示。
-
我知道你的问题是什么,但你的问题的答案是使用一个执行 ssh 的 Java 库,或者一个执行 scp 或 ftp 的库。答案只是推荐那些库,可以通过谷歌搜索找到。