What cross platform format to store data written and read by BigFix?

I have an issue where I want to have BigFix write data to a file on a client that should then be read by Relevance Inspectors for reporting later.

Ideally it would be cross platform, for both Windows and Mac… Linux would be a bonus.

INI files can be read cross platform using the inspector, but I’m not certain how to write values into INI files on the command line for all platforms. I’m also not certain that INI files’ Section, Key, Value structure will be flexible enough for my needs in all cases.

I think XML would be ideal, but the inspector only works on Windows last I checked, which is a problem. One work around I thought of would be to use the PLIST format for the XML data and us the XML inspectors on Windows to read it and the PLIST inspectors on the MAC to read it there. The main issue with this workaround is that it will not be the same relevance for both platforms, which sort of defeats the purpose.

SQLite might be an option, but I’d much prefer a text file.

Related:

Tools

I’ve been thinking about this too. I’ve been noodling on a way to track installed-by-fixlet versions of third-party 'nix tools on OS X. The best idea I’ve had so far is to write the version into a file, at the time of the installation.

The json inspectors are cross platform. Might be the best and simplest cross platform option.

Q: properties whose (it as string contains "json")  
A: json of <file>: json value  
A: name of <json key>: string
A: value of <json key>: json value
A: json of <string>: json value
A: type of <json value>: string
A: element <integer> of <json value>: json value
A: key <string> of <json value>: json key
A: path <string> of <json value>: json value
A: keys of <json value>: json key
A: elements of <json value>: json value
4 Likes

For whatever reason, I personally prefer XML, but JSON might be the next best option.

If I am going to use JSON, how do I write values into an existing JSON file on the command line? I’m having trouble figuring out the best way to do so.