carta
plistutil(1)

plistutil1

Convert a plist file between binary, xml, and json format

Usage

plistutil [OPTIONS] [-i FILE] [-o FILE]

Overview

plistutil allows converting a Property List file between binary, XML, and JSON format.

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.

-c, --compact

JSON and OpenStep only: Print output in compact form. By default, the output will be pretty-printed.

-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.

On the web

https://libimobiledevice.org

https://github.com/libimobiledevice/libplist

History

  • Arch Linux 2026-11-01 to Debian 13 (Trixie): the text shown here
  • Debian 12 (Bookworm) to Debian 11 (Bullseye)
  • Debian 10 (Buster) to Debian 8 (Jessie)

--compact since Debian 13 (Trixie); --debug since Debian 11 (Bullseye); --format since Debian 11 (Bullseye); --help since Debian 11 (Bullseye); --infile since Debian 11 (Bullseye); --outfile since Debian 11 (Bullseye); --print since Debian 13 (Trixie); --sort since Debian 13 (Trixie); --version since Debian 11 (Bullseye); -c since Debian 13 (Trixie); -d since Debian 11 (Bullseye); -f since Debian 11 (Bullseye); -h since Debian 11 (Bullseye); -i since Debian 11 (Bullseye); -o since Debian 11 (Bullseye); -p since Debian 13 (Trixie); -s since Debian 13 (Trixie); -v since Debian 11 (Bullseye).

Authors

Zach C.

Martin Szulecki

Nikias Bassen

From libplist 2.7.0-3 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.