首页 > 解决方案 > 如何在 cp 或 mv 等自定义 Eclipse 插件中打开终端并运行 shell 命令?

问题描述

我是eclipse开发的新手。试图创建一个插件,它将文件从一个目录复制到另一个目录。介绍菜单如下

示例菜单/复制文件菜单项

现在单击“复制文件”菜单,我想复制文件。为此,我想运行命令

cp file1.txt ../dir/file1.txt

我有如下处理程序,一旦我点击菜单就会执行。

public class SampleHandler extends AbstractHandler {
    @Override
    public Object execute(ExecutionEvent event) throws ExecutionException {
        return null;
    }
}

如何在我的handler.execute()方法中运行上述命令来复制文件?

标签: eclipseeclipse-plugineclipse-pde

解决方案


考虑在您自己的代码中读取和写入文件。依赖外部 shell 应用程序是不可移植的。

PlatformUI是获取实例的起点,获取你读写IWorkspace的源和目标。IFiles使用 、 和 的组合IFile#getContents()IFile#create()处理IFile#setContents()实际的 I/O。


推荐阅读