public void copyTo(FilePath target) throws IOException, InterruptedException {
        try {
            try (OutputStream out = target.write()) {
                copyTo(out);
            }
        } catch (IOException e) {
            throw new IOException("Failed to copy " + this + " to " + target, e);
        }
    }
@Test public void copyTo() throws Exception {
        File tmp = temp.newFile();
        FilePath f = new FilePath(channels.french, tmp.getPath());
        try (OutputStream out = OutputStream.nullOutputStream()) {
            f.copyTo(out);
        }
        assertTrue("target does not exist", tmp.exists());
        assertTrue("could not delete target " + tmp.getPath(), tmp.delete());
    }