как сохранить os.execute как переменную

#curl #lua

#curl #lua

Вопрос:

Я пишу скрипт на Lua, для выполнения которого требуется длинный curl. Мне нужно, чтобы значение команды curl было сохранено в переменной. Это кажется тривиальным, но, похоже, я не могу разобраться в этом. Да, я знаю, что я мог бы использовать некоторые модули curl и еще много чего. Проблема в том, что это для более старого оборудования, и по какой-то причине это не работает ни с одним из встроенных модулей curl, поэтому я выполняю команду curl как есть.

 command = "'https://mylongurl/value1?value2=somevalueamp;value3=someothervalue'"

result os.execute("curl " ..command)

print(result)

--this prints "true/false"
--I need the actual result
  

Комментарии:

1. Используйте io.popen() для чтения стандартного вывода

2. также вы можете перенаправить stdout / stderr во временные файлы и прочитать их после выполнения команды

Ответ №1:

как упоминал @Egor Skriptunoff:

 Use io.popen() to read the stdout