table of contents
other versions
- experimental 2.8.1-1~exp1
| plistutil(1) | General Commands Manual | plistutil(1) |
NAME¶
plistutil - Convert a plist FILE between binary, XML, JSON, and OpenStep formats
SYNOPSIS¶
plistutil [OPTIONS] [-i FILE] [-o FILE]
DESCRIPTION¶
plistutil allows converting a Property List file between binary, XML, JSON, and OpenStep formats.
OPTIONS¶
- -i, --infile FILE
- Input FILE to convert from. If this argument is omitted or - is passed as filename, plistutil will read from stdin.
- -o, --outfile FILE
- Output FILE to convert to. If this argument is omitted or - is passed as filename, plistutil will write to stdout.
- -f, --format [bin|xml|json|openstep]
- Force output format, regardless of input type. This is useful if the input
format is not known, but the output format should always be in a specific
format (like xml or json).
If omitted, XML plist data will be converted to binary and vice-versa. To convert to/from JSON or OpenStep the output format needs to specified.
- -p, --print FILE
- Print PList in human-readable format.
- -n, --nodepath PATH
- Restrict output to nodepath defined by PATH which selects a
specific node within the plist document. A node path describes traversal
through dictionaries and arrays using / to separate the components.
Traversal begins at the root node and proceeds from left to right. Each
component selects a child of the current node. If the current node is a
dictionary, the component is interpreted as a dictionary key name. If the
current node is an array, the component must be a non-negative decimal
integer specifying the array index (0-based).
Given the following structure:
<plist version="1.0"> <dict>
<key>Users</key>
<array>
<dict>
<key>Name</key>
<string>Alice</string>
</dict>
<dict>
<key>Name</key>
<string>Bob</string>
</dict>
</array> </dict> </plist>
A nodepath of:
- -c, --compact
- JSON and OpenStep only: Print output in compact form. By default, the output will be pretty-printed.
- -C, --coerce
- JSON and OpenStep only: Coerce non-compatible plist types to JSON/OpenStep
compatible representations. Date values become ISO 8601 strings, data
values become Base64-encoded strings (JSON), UID values become integers,
boolean becomes 1 or 0 (OpenStep), and NULL becomes a string 'NULL'
(OpenStep)
This options is implied when invoked as plist2json.
- -s, --sort
- Sort all dictionary nodes lexicographically by key before converting to the output format.
- -h, --help
- Prints usage information.
- -d, --debug
- Enabled extended debug output.
- -v, --version
- Print version information
EXAMPLES¶
- plistutil -i test.plist -o out.plist
- Convert test.plist and write to out.plist. If test.plist is in XML format, out.plist will be in binary format. If test.plist is in binary format, out.plist will be in XML format.
- plistutil -i test.plist -o out.plist -f bin
- Same as before, but the output will always be in binary format.
- plistutil -i test.plist -f xml
- Print test.plist as XML plist, regardless of the input format.
- plistutil -i test.plist -f xml -o -
- Same as before.
- plistutil -i test.plist -f json
- Print test.plist as JSON plist, regardless of the input format.
- cat test.plist |plistutil -f xml
- Take plist data from stdin - piped via cat - and write the output as XML to stdout.
AUTHORS¶
Zach C.
Martin Szulecki
Nikias Bassen