this repo has no description
1.\"Copyright (c) 1999-2012 Apple Computer, Inc. All Rights Reserved.
2.\"
3.\"This file contains Original Code and/or Modifications of Original Code
4.\"as defined in and that are subject to the Apple Public Source License
5.\"Version 2.0 (the 'License'). You may not use this file except in
6.\"compliance with the License. Please obtain a copy of the License at
7.\"http://www.opensource.apple.com/apsl/ and read it before using this
8.\"file.
9.\"
10.\"The Original Code and all software distributed under the License are
11.\"distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
12.\"EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
13.\"INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
14.\"FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
15.\"Please see the License for the specific language governing rights and
16.\"limitations under the License.
17.Dd February 19, 2007
18.Dt PLISTBUDDY 8
19.Os "Mac OS X"
20.Sh NAME
21.Nm PlistBuddy
22.Nd read and write values to plists
23.Sh SYNOPSIS
24.Nm
25.Op Fl cxh
26.Ar file.plist
27.Sh DESCRIPTION
28The
29.Nm
30command is used to read and modify values inside of a plist. Unless specified by the
31.Fl c
32switch,
33.Nm
34runs in interactive mode.
35.Pp
36The following commands are used to manipulate plist data:
37.Bl -tag -width "Clear Type"
38.It Sy Help
39Prints this information.
40.It Sy Exit
41Exits the program. Changes are not saved to the file.
42.It Sy Save
43Saves the current changes to the file.
44.It Sy Revert
45Reloads the last saved version of the file.
46.It Sy Clear Ar type
47Clears out all existing entries, and creates root of type
48.Ar type .
49See below for a list of types.
50.It Sy Print Op entry
51Prints value of
52.Ar entry .
53If an entry is not specified, prints entire file. See below for an explanation of how entry works.
54.It Sy Set Ar entry Ar value
55Sets the value at
56.Ar entry
57to
58.Ar value .
59.It Sy Add Ar entry Ar type Op value
60Adds
61.Ar entry
62with type
63.Ar type
64and optional value
65.Ar value .
66See below for a list of types.
67.It Sy Copy Ar entrySrc Ar entryDst
68Copies the
69.Ar entrySrc
70property to
71.Ar entryDst .
72.It Sy Delete Ar entry
73Deletes
74.Ar entry
75from the plist.
76.It Sy Merge Ar file Op entry
77Adds the contents of plist
78.Ar file
79to
80.Ar entry .
81.It Sy Import Ar entry Ar file
82Creates or sets
83.Ar entry
84to the contents of
85.Ar file .
86.El
87.Pp
88Entries consist of property key names delimited by colons. Array items are specified by a zero-based integer index. Examples:
89.Pp
90 :CFBundleShortVersionString
91 :CFBundleDocumentTypes:2:CFBundleTypeExtensions
92.Pp
93Entries may be of the following types:
94.Pp
95 string
96 array
97 dict
98 bool
99 real
100 integer
101 date
102 data
103.Sh OPTIONS
104.Bl -tag -width "-c command"
105.It Fl c Ar command
106Execute command and exit. By default, PlistBuddy will run in interactive mode.
107.It Fl x
108Output will be in the form of an xml plist where appropriate.
109.It Fl h
110Print the complete help info.
111.El
112.Sh EXAMPLES
113.Pp
114Set the CFBundleIdentifier property to com.apple.plistbuddy:
115.Vb 1
116.Pp
117\& Set :CFBundleIdentifier com.apple.plistbuddy
118.Ve
119.Pp
120Add the CFBundleGetInfoString property to the plist:
121.Vb 1
122.Pp
123\& Add :CFBundleGetInfoString string "App version 1.0.1"
124.Ve
125.Pp
126Add a new item of type dict to the CFBundleDocumentTypes array:
127.Vb 1
128.Pp
129\& Add :CFBundleDocumentTypes: dict
130.Ve
131.Pp
132Add the new item to the beginning of the array:
133.Vb 1
134.Pp
135\& Add :CFBundleDocumentTypes:0 dict
136.Ve
137.Pp
138Delete the \s-1FIRST\s0 item in the array:
139.Vb 1
140.Pp
141\& Delete :CFBundleDocumentTypes:0 dict
142.Ve
143.Pp
144Delete the \s-1ENTIRE\s0 CFBundleDocumentTypes array:
145.Vb 1
146.Pp
147\& Delete :CFBundleDocumentTypes
148.Ve
149.Pp
150.Sh EXIT STATUS
151.Nm
152command returns a zero exit status if it succeeds. Non zero is returned in case of failure.