如何使用纯 Red 语言存储目录文件列表?
How can I store list of directory files using pure Red language?
我正在尝试将目录中的文件列表存储在变量中(仅使用 CLI,红色版本:0.6.3)。
我测试了 "Red by example" 文档中的几个函数,但它们都只给我一个 CLI 输出,其中包含目录中的元素列表:
当我尝试将其保存到变量中时,出现如下错误:
>> var: list-dir %tests
other-tests.red README.md poc-tests.red
*** Script Error: var: needs a value
*** Where: var
*** Stack:
>> files: ls tests
other-tests.red README.md poc-tests.red
*** Script Error: files: needs a value
*** Where: files
*** Stack:
>> other: dir %tests
other-tests.red README.md poc-tests.red
*** Script Error: other: needs a value
*** Where: other
*** Stack:
我还找到了 call 方法,它让我有可能使用 运行 外部脚本(比如 shell 脚本),通过它我可以执行 OS 命令ls
:
>> filelist: ""
>> call/output "ls tests" filelist
>> print filelist
other-tests.red
poc-tests.red
README.md
但是这个解决方案依赖于操作系统。例如在 MS Windows call/output "dir tests" filelist
中将起作用。
谁能告诉我-是否有另一种解决方案可以使用纯红色代码而不执行外部脚本?
也许某处有来自 Red System 的一些 magic
函数,谁能给我们?
独立于 OS 就好了。
感谢您的回答
只需要读取目录:
read %tests/
这会给你一个文件块!目录内容的值。
我正在尝试将目录中的文件列表存储在变量中(仅使用 CLI,红色版本:0.6.3)。
我测试了 "Red by example" 文档中的几个函数,但它们都只给我一个 CLI 输出,其中包含目录中的元素列表:
当我尝试将其保存到变量中时,出现如下错误:
>> var: list-dir %tests
other-tests.red README.md poc-tests.red
*** Script Error: var: needs a value
*** Where: var
*** Stack:
>> files: ls tests
other-tests.red README.md poc-tests.red
*** Script Error: files: needs a value
*** Where: files
*** Stack:
>> other: dir %tests
other-tests.red README.md poc-tests.red
*** Script Error: other: needs a value
*** Where: other
*** Stack:
我还找到了 call 方法,它让我有可能使用 运行 外部脚本(比如 shell 脚本),通过它我可以执行 OS 命令ls
:
>> filelist: ""
>> call/output "ls tests" filelist
>> print filelist
other-tests.red
poc-tests.red
README.md
但是这个解决方案依赖于操作系统。例如在 MS Windows call/output "dir tests" filelist
中将起作用。
谁能告诉我-是否有另一种解决方案可以使用纯红色代码而不执行外部脚本?
也许某处有来自 Red System 的一些 magic
函数,谁能给我们?
独立于 OS 就好了。
感谢您的回答
只需要读取目录:
read %tests/
这会给你一个文件块!目录内容的值。