我有一个名为foo.rkt的racket文件。在该文件中,我有一个名为textify的过程,它需要2个参数。现在如何从终端调用此过程?我想做的只是:
> racket foo.rkt myfirstarg mysecondarg
然后我希望此调用激活(textify myfirstarg mysecondarg)
过程。这可能吗 ?
以下是foo.rkt的内容:
#lang racket
(require wxme)
(provide
(contract-out
[textify (-> path-string? path-string? void?)]))
(define (textify in out)
(call-with-input-file in
(λ (in-port)
(call-with-output-file out
(λ (out-port)
(copy-port (wxme-port->text-port in-port) out-port))
#:exists 'truncate))))
答案 0 :(得分:3)
您可以将其作为文件中的最后一个表达式:
(apply textify (vector->list (current-command-line-arguments)))
如果您正在制作一个具有开关的更高级程序,您可以使用command-line
为您执行此操作。