PLISTBUDDY(8)

NAME
PlistBuddy - read and write values to plists

SYNOPSIS
PlistBuddy [-cxh] file.plist

DESCRIPTION
The PlistBuddy command is used to read and modify values inside of a plist. Unless specified by the -c switch, PlistBuddy runs in interactive mode.

The following commands are used to manipulate plist data:

Help
    Prints this information.

Exit
    Exits the program. Changes are not saved to the file.

Save
    Saves the current changes to the file.

Revert
    Reloads the last saved version of the file.

Clear type
    Clears out all existing entries, and creates root of type type. See below for a list of types.

Print [entry]
    Prints value of entry. If an entry is not specified, prints entire file. See below for an explanation of how entry works.

Set entry value
    Sets the value at entry to value.

Add entry type [value]
    Adds entry with type type and optional value value. See below for a list of types.

Copy entrySrc entryDst
    Copies the entrySrc property to entryDst.

Delete entry
    Deletes entry from the plist.

Merge file [entry]
    Adds the contents of plist file to entry.

Import entry file
    Creates or sets entry to the contents of file.

Entries consist of property key names delimited by colons. Array items are specified by a zero-based integer index. Examples:

:CFBundleShortVersionString :CFBundleDocumentTypes:2:CFBundleTypeExtensions

Entries may be of the following types:

string array dict bool real integer date data

OPTIONS

-c command
    Execute command and exit. By default, PlistBuddy will run in interactive mode.

-x  Output will be in the form of an xml plist where appropriate.

-h  Print the complete help info.

EXAMPLES

Set the CFBundleIdentifier property to com.apple.plistbuddy:

Set :CFBundleIdentifier com.apple.plistbuddy

Add the CFBundleGetInfoString property to the plist:

Add :CFBundleGetInfoString string "App version 1.0.1"

Add a new item of type dict to the CFBundleDocumentTypes array:

Add :CFBundleDocumentTypes: dict

Add the new item to the beginning of the array:

Add :CFBundleDocumentTypes:0 dict

Delete the FIRST item in the array:

Delete :CFBundleDocumentTypes:0 dict

Delete the ENTIRE CFBundleDocumentTypes array:

Delete :CFBundleDocumentTypes

EXIT STATUS
PlistBuddy command returns a zero exit status if it succeeds. Non zero is returned in case of failure.