defaults is a command line utility that manipulates plist files. Introduced in 1998 OPENSTEP, defaults is found in the system's descendants macOS and GNUstep.[1][2]

The name "defaults" derives from OpenStep's name for user preferences, Defaults, or NSUserDefaults in Foundation Kit. Each application had its own defaults plist ("domain"), under ~/Defaults for the user configuration and /Defaults for the system configuration. The lookup system also supports a NSGlobalDomain.plist, where defaults written there will be seen by all applications.[2][3] In macOS, the Defaults part of the path is replaced by the more intuitive Library/Preferences. defaults accesses the plists based on the domain given.[2]

defaults is also able to read and write any plist specified with a path,[1] although Apple plans to phase out this utility in a future version.[2][4]

Usage

edit

Common uses of defaults:

$ defaults read DOMAIN # gets all
$ defaults read DOMAIN PROPERTY_NAME # gets
$ defaults write DOMAIN PROPERTY_NAME VALUE # sets
$ defaults delete DOMAIN PROPERTY_NAME # resets a property
$ defaults delete DOMAIN # resets preferences

DOMAIN should be replaced by the plist file name sans extension ('.plist'). plist files are named with reverse domain name notation. For example:

$ defaults read com.apple.iTunes # prints all iTunes preference values

plist files store keys and values. The PROPERTY_NAME key is the name of the property to modify. For example, to remove the search field from Safari's address bar:

$ defaults write com.apple.Safari AddressBarIncludesGoogle 0
$ # or
$ defaults write com.apple.Safari AddressBarIncludesGoogle -bool NO # case-sensitive!

Using "1", "YES", or "TRUE" instead restores this to the default of including search.

Preferences can at times corrupt applications. To reset Address Book's preferences, either the file ~/Library/Preferences/com.apple.AddressBook.plist must be removed or the following command issued:

$ defaults delete com.apple.AddressBook

Compound values

edit

defaults prints values in the OpenStep format. It allows the VALUE to be arrays and dicts, as long as they conform to old-style plist syntax.[5]

Settings

edit

Some example settings configurable with defaults under macOS:

Globally-available defaults (works in NSGlobalDomain or application settings)
Key OSX Version Legal Values Default Value
AppleAquaColorVariant 10.8 1, 6 1
AppleHighlightColor 10.8 RGB, 3 floats range 0-1.0 "0.780400 0.815700 0.858800"
AppleShowScrollBars[6] 10.8 Automatic, WhenScrolling, Always Automatic
NSQuitAlwaysKeepsWindows[7] 10.8 bool false
NSAutomaticWindowAnimationsEnabled[8] 10.8 bool true
NSNavPanelExpandedStateForSaveMode[9] 10.8 bool false
NSWindowResizeTime[8] 10.8 float:time in seconds .2
CGFontDefaultAllowsFontSmoothing[10] 10.14? boolean

SS64 documents a set of other keys that can be changed for each software (not the global domain) in macOS.[11] Other sites also document settings to be changed using defaults.[12] Apple does not publish a complete list of these "secret knobs", but their support site does occasionally provide defaults commands for user to change a certain setting, such as the creation of .DS_Store.[13]

GNUstep documents its defaults more clearly, so that there is no such thing as a "hidden settings" community like there is for macOS.[3]

References

edit
  1. ^ a b defaults(1) – Linux General Commands Manual from ManKier.com
  2. ^ a b c d defaults(1) – Darwin and macOS General Commands Manual
  3. ^ a b "User Defaults Summary for GNUstep Libraries". www.gnustep.org.
  4. ^ "Unofficial macOS defaults man page". ss64.com.
  5. ^ "macos - modifying a Plist from command line on Mac using Defaults". Stack Overflow.
  6. ^ grg (26 August 2013). "macos - Enabling Scroll Bars In Mountain Lion?". Ask Different.
  7. ^ "Disable 'Resume' system-wide". defaults-write.com. 26 September 2012.
  8. ^ a b "10 terminal commands to speed up macOS High Sierra on your Mac". defaults-write.com. 11 November 2017.
  9. ^ Bynens, Mathias. "mathiasbynens/dotfiles: .macos". GitHub. Retrieved 1 March 2020.
  10. ^ "Issue 858861: No subpixel antialiasing under macOS Mojave". bugs.chromium.org.
  11. ^ "System preference settings for macOS - macOS - SS64.com". ss64.com.
  12. ^ "Top 11 Terminal Command Tricks for Mac That You Should Know". Guiding Tech. 19 August 2019.
  13. ^ "Adjust SMB browsing behavior in macOS High Sierra 10.13 and later". Apple Support. Retrieved 5 January 2020. (type into a search engine to find more: site:support.apple.com "defaults write")
edit

📚 Artikel Terkait di Wikipedia

Default

resetting to factory defaults defaults (software), a command line utility for plist (preference) files for macOS and GNUstep "Default" (Atoms for Peace song)

Default effect

a default increases the likelihood that such an option is chosen. There are two broad classes of defaults: mass defaults and personalised defaults. Setting

Default (computer science)

A default, in computer science, refers to the preexisting value of a user-configurable setting that is assigned to a software application, computer program

Software rot

Software rot (bit rot, code rot, software erosion, software decay, or software entropy) is the degradation, deterioration, or loss of the use or performance

Sony Xperia

also includes various related mobile hardware such as tablets as well as software. Xperia was originally developed by Sony Ericsson before becoming Sony

Make (software)

In software development, Make is a command-line interface software tool that performs actions ordered by configured dependencies as defined in a configuration

GNOME

Pennington – a software developer involved in the project – who emphasized the idea that it is better to make software behave correctly by default than to add

Brave Search

Brave Search is a search engine developed by Brave Software, Inc., and is the default search engine for the Brave web browser in certain countries. Brave