java - 使用 Java 文件/IO API 复制目录同时保留符号链接(symbolic link)

标签 java unix file-io

是否可以在保留现有符号链接(symbolic link)的同时使用 Java I/O 和文件相关 API 复制目录内容?我正在开发一种工具,需要在保留现有符号链接(symbolic link)的同时对各种 UNIX 风格执行“目录复制”操作。

我更愿意使用核心 Java SE 库尝试此操作,而无需求助于 Runtime.exec/ProcessBuilder 来调用平台的“/bin/cp”二进制文件。 Apache Commons 的 IOUtils 似乎也不支持这一点。

我最后的选择是使用 Runtime.exec/ProcessBuilder!

更新: 我想我将使用 Runtime.exec/ProcessBuilder 调用 native “cp”可执行文件,因为使用核心 Java API 或任何 Apache Commons 库似乎都不可能。

最佳答案

您是否仅限于 <= 6 的 Java 版本?

否则你可能想看看http://docs.oracle.com/javase/tutorial/essential/io/links.html ,特别是检测符号链接(symbolic link)查找链接目标部分。

来自 The Java NIO.2 File System in JDK 7 :

The java.nio.file API has full support for symbolic links based on the long-standing semantics of UNIX symbolic links -- something that Java developers have long requested.

关于java - 使用 Java 文件/IO API 复制目录同时保留符号链接(symbolic link),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3024820/

相关文章:

java - 突出显示时更改 SWT 树节点文本前景

shell - 在文件中搜索多个模式并在模式匹配时删除行

unix:我可以在不丢失条目的情况下并行写入同一个文件吗?

C++ 二进制文件读取

haskell - 从二进制文件中读取整数序列

java - java.io.IOException : "The filename, directory name, or volume label syntax is incorrect" 的可能原因是什么

Java ArrayIndexOutOfBounds 异常

java - Spring ProxyFactoryBean服务拦截不独特

java - 支持来自 Apache FOP PDF 生成的外部 CSS 文件

linux - 使用此处文档为用户提供多种选择