【发布时间】:2022-11-14 08:30:25
【问题描述】:
我想创建一个脚本,它接受一个输入文件和一个可选的输出文件。当您不传递输出文件时,脚本使用与输入相同的文件名,但扩展名已更改。我不知道如何编写更改扩展名的默认参数。
#!/usr/bin/env raku
unit sub MAIN(
Str $input where *.IO.f, #= input file
Str $output = $input.IO.extension("txt"), #= output file
Bool :$copy, #= copy file
Bool :$move, #= move file
);
不幸的是,这不起作用:
No such method 'IO' for invocant of type 'VMNull'
in block <unit> at ./copy.raku line 5
我怎么能做这样的事情?
【问题讨论】:
-
这看起来很像一个错误。
-
是的,看起来很像一些奇怪的代码生成/绑定/调度错误。看起来删除
#=字符串有一个有益的效果。 -
谢谢!。我删除了评论作为解决方法。
标签: raku