2016-12-07 19 views
1

私はluaでファイルをオープン/開始してみましたが、実際にファイルをオープン/スタートさせるのではなく、ファイルのステータス/内容を返す/実行するdofile()のような関数があります。私のシナリオでは、私がluaを使って開始しようとしている.htaファイルがあります。私は技術的に疑問があるのは、luaがバッチコマンド "start"のような機能を持っていて、ルアファイルからコンソールにコマンドを送るには?誰かが私を助けることができたら、私は本当にそれを感謝します。バッチコマンド "start"のように、luaでどのようにファイルを起動/表示できますか?

+3

私はluaが何であるか分かりません。しかし、htaはmshta.exeによって実行されます。 'mshta c:\ folder \ file.hta'を実行します。あなたの言語によると 'os.execute([command])' - https://www.lua.org/manual/5.3/manual.html#6.9 –

+2

'os.execute [[" c:\ path \ to \ your \ file.hta "]]'は最も簡単な方法です。 –

答えて

3

あなたが探しているものはos.execute()です。それはあなたがオペレーティングシステムのシェルでコマンドを実行することができます:あなたはまた、実行されたコマンドからの出力をキャプチャし、使用することができ、あなたのLuaのコードでそれを使用したい場合は

local code = os.execute("ls -la") 
if code ~= 0 then 
    print("Something when wrong while running command") 
end 

io.popen()

local f = assert(io.popen("ls -la", 'r')) 
local output = assert(f:read('*a')) 
f:close() 
print(output) 

すべてのシステムでio.popen()を使用できるわけではありません。

+0

ありがとうございました! –

関連する問題