- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在从我的 Linux shell 执行 Torch 脚本,使用 th
命令。此 Torch 脚本采用两个输入参数:th torch_script.lua input_parameter1 input_parameter2
现在我想通过 Torch shell 运行这个脚本。为此,我必须使用 dofile
命令。但是在这种情况下,我不知道如何传递输入参数input_parameter1
和 input_parameter2
.
在 Torch 中,如何将一些输入参数传递给 dofile
执行命令?
编辑 :这是我试图运行的代码。我无法正确运行它,也许您可以告诉我原因
external_command.lua 内容:
local arg = arg or {...}
input_parameter = arg[1]
print("input_parameter ".. input_parameter);
$th
th> tempFunc = load "external_command.lua"
th> tempFunc("try")
[string "_RESULT={tempFunc("try")}"]:1: attempt to call global 'tempFunc' (a nil value)
stack traceback:
[string "_RESULT={tempFunc("try")}"]:1: in main chunk
[C]: in function 'xpcall'
/home/davide/torch/install/share/lua/5.1/trepl/init.lua:630: in function 'repl'
...vide/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:185: in main chunk
[C]: at 0x004064d0
runfile()
在名为
runfile.lua
的脚本中其中包含以下代码:
function runfile(scriptName, input)
opt = nil
arg = input
dofile(scriptName)
end
external_command.lua
我之前定义为
scriptName
的脚本此函数的输入参数:
th> scriptName = "external_command.lua"
th> require './runfile.lua'
th> runfile(scriptName, "Hello world");
external_command.lua:4: attempt to concatenate global 'input_parameter' (a nil value)
stack traceback:
external_command.lua:4: in main chunk
[C]: in function 'dofile'
/home/davide/torch/temp/runfile.lua:4: in function 'runfile'
[string "runfile(scriptName, "Hello world");"]:1: in main chunk
[C]: in function 'xpcall'
/home/davide/torch/install/share/lua/5.1/trepl/init.lua:648: in function 'repl'
...vide/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:185: in main chunk
[C]: at 0x004064d0
最佳答案
我认为诀窍是在全局变量“args”中传递参数。说,我在external_command.lua
中有以下内容.
-- args has been set by the caller
if not args or #args == 0 then
print('no input_parameter')
else
print('#args = ' .. #args, 'input_parameter: ' .. args[1])
end
function runfile(f, ...)
local tmp = args -- save the original global args
args = table.pack(...)
dofile(f)
args = tmp -- restore args
end
th> runfile('ext_command.lua', 10)
#args = 1 input_parameter: 10
[0.0002s]
th> runfile('ext_command.lua', 'a', 'b', 'c')
#args = 3 input_parameter: a
[0.0002s]
关于shell - Torch,如何执行带有 "dofile"和输入参数的脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32995102/
本来今天不应该讨论这几个函数的,不过,为了凑字数..不,为了方便以后的文章,还是要谈谈这几个基础函数的~ 1.loadfile——只编译,不运行 loadfile故名思议,它只会加载文件,编译代
复制代码 代码如下: do local errorInfo = loadfile("test.lua"); --load code file i
1.loadfile只编译,不运行 loadfile(filename, mode, env) 用于加载一个指定路径filename的代码块,参数如下: 基本和load等同,区别是用来加载一个文件的代
我正在从我的 Linux shell 执行 Torch 脚本,使用 th命令。此 Torch 脚本采用两个输入参数: th torch_script.lua input_parameter1 inpu
在过去的 2 天里,我一直在为这个问题绞尽脑汁,但一直未能找到解决方案... 基本上,我有一个有两个下拉列表(果冻标签)的插件。其中一个填充了所有可用的项目类型,另一个填充了适用于先前选择的项目类型的
我正在尝试将身份验证服务注入(inject)过滤器 - @Autowired AuthRequestService authService; 并在 doFiler 方法中使用它 - @Override
谁能告诉我是否可以通过加载一个 lua 脚本来合理地期望任何性能提升,该脚本将被重复调用到内存中以通过 LuaInterface 的 dostring() 功能执行,而不是比 dofile()? 我假
使用 Lua 5.3.4 C API,这有效: luaL_dostring(lua, "dofile('mnemonics.lua')"); 但这无法执行文件: luaL_dofile(lua, "m
我有《Programming in Lua》这本书,我下载了适用于 Windows 的 lua 电池。 第一个示例是保存在名为 lib1.lua 的文件中的函数。我在 SciTE 文本编辑器中创建了这
我用 luaL_loadfile 预加载了一些 lua 文件,然后我多次执行它(它是一个服务器)。我在 lua 文件中有一些 dofile() 调用。 luaL_loadfile 还会预加载 lua
使用其中一个功能会不会有任何性能提升。使用这两个函数是否有内部差异,如果有,它们是什么。 最佳答案 dofile , loadfile和 loadstring都调用相同的原语来解析脚本。 我猜你的意思
我可以将所有文件编译成一个文件,然后从 C 执行吗?在我的 lua 文件中,我使用了 require 和 dofile 函数。当我尝试使用 luac 进行编译然后我想执行编译后的文件时,它将无法找到我
是否可以在 Lua 中加载 .dll 库?假设我有一个已编译的 .dll 文件,文件夹如下所示: |------test.lua |------mylib.dll 我可以使用 requi
我是一名优秀的程序员,十分优秀!