Skip to content

dscl MacOS Command Guide

The MacOS dscl command allows users to interact with Directory Services from the command line. It can be used to manage Directory Service entries, including user accounts, groups, and other system configurations. With dscl, users can create, modify, and delete records in the Directory Service, as well as perform searches and queries to retrieve information. This command provides a powerful way to manage and manipulate Directory Services on MacOS, offering a wide range of capabilities for system administrators and advanced users.

Terminal window
dscl [directory] [command]
OptionDescription
-createCreate a record
-deleteDelete a record
-searchSearch for records
-readRead property values
-changeChange property values
-mergeMerge with existing values
ParameterDescription
directoryThe directory where the operation will occur
commandThe specific action within the directory
Terminal window
dscl . -list /Users

This command lists all user accounts on the system.

Terminal window
dscl . -read /Users/username NFSHomeDirectory

Reads and displays the home directory of a specific user.

Terminal window
sudo dscl . -create /Users/newusername

Creates a new user account with the specified username.

Terminal window
sudo dscl . -passwd /Users/username

Allows you to change the password for a specific user.

Terminal window
sudo dscl . -create /Users/username AuthenticationAuthority ";DisabledUser;"

Disables a user account by adding the DisabledUser attribute.

Terminal window
sudo dscl . -append /Groups/groupname GroupMembership username

Adds a user to a specified group.

Terminal window
dscl . -read /Users/username | grep PrimaryGroupID

Displays the primary group ID for a specific user.

How do I list all users in MacOS using dscl?

Section titled “How do I list all users in MacOS using dscl?”

To list all users in MacOS using dscl, execute the following command:

Terminal window
dscl . -list /Users

How can I find the UID of a specific user with dscl in MacOS?

Section titled “How can I find the UID of a specific user with dscl in MacOS?”

To find the UID of a specific user with dscl in MacOS, use the following command:

Terminal window
dscl . -read /Users/username UniqueID

How do I add a new user with dscl in MacOS?

Section titled “How do I add a new user with dscl in MacOS?”

To add a new user with dscl in MacOS, run the following command:

Terminal window
sudo dscl . -create /Users/newusername

How do I change the password of a user with dscl in MacOS?

Section titled “How do I change the password of a user with dscl in MacOS?”

To change the password of a user with dscl in MacOS, enter the following command:

Terminal window
sudo dscl . -passwd /Users/username newpassword

Can I delete a user account using dscl in MacOS?

Section titled “Can I delete a user account using dscl in MacOS?”

Yes, you can delete a user account using dscl in MacOS with the following command:

Terminal window
sudo dscl . -delete /Users/username

How do I unlock a user account with dscl in MacOS?

Section titled “How do I unlock a user account with dscl in MacOS?”

To unlock a user account with dscl in MacOS, use the following command:

Terminal window
sudo dscl . -delete /Users/username AuthenticationAuthority
  • Querying user information
  • Managing user accounts
  • Managing groups
  • Managing directory service nodes
  • Setting and changing directory service configurations
  • Managing Directory Service Access Lists (ACLs)
  • Managing authentication policies
  • Managing node and record types