Smooth Operator:在写入文件时重命名文件
Smooth Operator: Rename a file while writing to it
在 Linux 中(可能也在 Windows/OSX 中)如果我们打开一个文件进行写入并在写入时重命名它,raku 过程会顺利进行并继续写入文件应该。
但是我们如何在重命名的同时找到文件的新名称(路径)呢?
IO::Notification 不是要走的路,因为它没有提供其他信息,只提供一般描述:
FileRenamed or FileChanged
有办法吗?
简答:不,据我所知没有。
这里有一些技术背景:MoarVM 上的 Rakudo(这是唯一支持 IO::Notification
afaik 的后端)依赖于 libuv
来实现此功能。如果libuv
不支持,Rakudo支持的可能性很小。
我不知道 libuv
是否支持该功能。如果是这样,我建议你在 MoarVM 中提出一个问题来引起人们的注意。或者更好的是,编写一个 Pull Request 来实现该功能。
在 Linux 中(可能也在 Windows/OSX 中)如果我们打开一个文件进行写入并在写入时重命名它,raku 过程会顺利进行并继续写入文件应该。
但是我们如何在重命名的同时找到文件的新名称(路径)呢?
IO::Notification 不是要走的路,因为它没有提供其他信息,只提供一般描述:
FileRenamed or FileChanged
有办法吗?
简答:不,据我所知没有。
这里有一些技术背景:MoarVM 上的 Rakudo(这是唯一支持 IO::Notification
afaik 的后端)依赖于 libuv
来实现此功能。如果libuv
不支持,Rakudo支持的可能性很小。
我不知道 libuv
是否支持该功能。如果是这样,我建议你在 MoarVM 中提出一个问题来引起人们的注意。或者更好的是,编写一个 Pull Request 来实现该功能。