在 Rebol 中,有一些用于目录和文件管理的词,如 make-dir、what-dir、rename、create-link 等。但我找不到一个词来简单地将文件复制到另一个位置或新创建的文件。
一个解决方案是读写。例如,我可以这样做:
>> source: %.bash_history
== %.bash_history
>> target: %nothing
== %nothing
>> write/binary target (read/binary source)
而且效果很好。但是,如果我的文件大于可用内存怎么办?有没有办法复制文件而不将其加载到内存中?
目前,我对底层操作系统进行了调用:
>> call rejoin ["cp " to-string source " " to-string target]
但这不能移植到与我不同的平台(GNU/Linux Mint):它将在所有 Unices、Mac OSX 上运行,但不能在其余平台上运行。
我想编写一个小函数来做到这一点,猜测正在运行的操作系统并相应地调整命令行应该不会太难。
所以我的问题是:是否已经有一个 rebol 标准词来复制文件?如果没有,是否有计划在模块或其他东西中制作一个?