cross-posted from: https://lemmy.nz/post/4294116
I have a file with content like this:
item({ ["attr"] = { ["size"] = "62091"; ["filename"] = "qBuUP9-OTfuzibt6PQX4-g.jpg"; ["stamp"] = "2023-12-05T19:31:37Z"; ["xmlns"] = "urn:xmpp:http:upload:0"; ["content-type"] = "image/jpeg"; }; ["key"] = "Wa4AJWFldqRZjBozponbSLRZ"; ["with"] = "email@address"; ["when"] = 1701804697; ["name"] = "request"; });I need to know what format this is, and if there exists a tool in linux already to parse this or if I need to write one myself?
Thanks!
6 Comments
Bankenstein@feddit.de · 22 pts · 2y
It's Lua.
callyral@pawb.social · 10 pts · 2y
Lua function "item" called with argument of type table
The function is the outer part with the parentheses, the table is the inner part with the curly braces. ["attr"] is a table inside the table.
For example, to access (table)>attr>size you would write:
table["attr"]["size"](assuming the table is named, that is, assigned to a variable called "table")moomoomoo309@programming.dev · 5 pts · 2y
This is correct. You can also omit the parentheses on the function call in Lua if the only argument is a table or string literal.
anon5621@lemmy.ml · -18 pts · 2y
This is JSON.A lot cli tools exist to manilulate json files.Example: jq
semperverus@lemmy.world · 17 pts · 2y
I thought json at first too but json does not use brackets around its keys like that or semicolons to end a key value pair, it uses commas. It also doesnt use equal signs for the value assignments, it uses colons.
anon5621@lemmy.ml · 7 pts · 2y
U are right,I got confused