I'm using Mac OS X. When I SSH into servers I find the ll
command useful, but it's not available on my local machine. How can I install it?

- 4,657
11 Answers
MacOS:
alias ll='ls -lG'
Linux:
alias ll='ls -l --color=auto'
Stick that in the appropriate startup file for your shell, e.g. ~/.bashrc
or ~/.zshrc
. To apply the setting, source
the file, or quit and restart your terminal.

- 434,908

- 45,725
In OS X 10.9.5 since Mavericks (and at least up to El Capitan) you have to add an alias command to your .bash_profile file in your home folder:
~/.bash_profile
which is equivalent to your user path at
/Users/YOUR_USER_NAME/.bash_profile
To see that file in finder you have to activate the display of hidden files (e.g. using the app InVisible). Otherwise you can simply use your terminal to locate it and edit it with nano:
nano ~/.bash_profile
Then add an alias command to the end of that file. The standard ll alias would be
alias ll='ls -lG'
but I prefer
alias ll='ls -lGaf'
which also shows all hidden files (starting with a dot) and sorts the output case-insensitive.
Don't forget to restart your terminal app after the changes.

- 67,283
- 35
- 116
- 255

- 711
-
12you don't need to restart the terminal, it is enough to use
source ~/.bash_profile
to reload the new settings – Asped Aug 26 '16 at 09:38
macOS with zsh shell should put
alias ll='ls -lG'
to ~/.zshrc instead of ~/.bash_profile nor ~/.bashrc

- 111
-
very good one. I like to use alias ll='ls -laG' So, the files size is displayed in MB, KB, etc – xCovelus Feb 15 '23 at 21:09
Run type ll
to see where the ll
command is coming from. ll
is not a standard command, but many distributions predefine it to an alias for ls
with some preset options. The output of type ll
gives you the definition of the alias, or you can look for it in your shell configuration file (~/.bashrc
if your shell is bash). Copy the definition to ~/.bashrc
on the other machine.
Bash handles its configuration file in a slightly odd way: it loads ~/.bashrc
in all interactive shells except the ones that are also login shells. Bash only loads ~/.bash_profile
(if it exists, otherwise ~/.profile
) in a login shell. To make sure that your .bashrc
is read when it should be, put this line in your ~/.bash_profile
:
case $- in *i*) . ~/.bashrc;; esac

- 829,060
Add alias ll='ls -lG'
to your ~/.profile
with your favorite $EDITOR
.
With this method, remember that you'll have to start a new terminal session (or source ~/.profile
to be able to use ll
).

- 4,790

- 61
On macOS Ventura:
echo "alias ll='ls -la'" >> ~/.zshrc
Don't forget to close and reopen Terminal after that.
As it's explained in the article:
Apple has changed the default shell to zsh. Therefore you have to rename your configuration files. .bashrc is now .zshrc and .bash_profile is now .zprofile.
The difference between .bash_profile
and .bashrc
files explained in this article.

- 161
If you want it to apply in all accounts, you can also put
alias ll='ls -lG'
in /etc/profile
.

- 82,805

- 31
To summarize the best of all answers:
Mac OS X (tested on El Capitan)
echo "alias ll='ls -lGaf'" >> ~/.bash_profile
source ~/.bash_profile
Linux
echo "alias ll='ls -la --color=auto'" >> ~/.bash_profile
source ~/.bash_profile

- 131
(MacOS Mojave Example)
Open the hidden
.bash_profile
file in the Vim editor:vim ~/.bash_profile
Jump to the last character of the file by pressing capital G and then $.
Press o to add a new line to the file.
Insert your new alias like:
alias ll='ls -lG'
Press Esc to exit insert mode of Vim.
Type following to write your new changes and exit the editor:
:wq
Reopen terminal and you should be able to use the alias
ll

- 333,661

- 121
I don't have the rep points yet to comment directly on someone else's comment but, I just wanted to clarify that "alias ll='ls -lGaf'"
is partly redundant. Using -f automatically enables -a as well. You can verify this in the man page for ls
. So, all that's truly needed is "alias ll='ls -lGf'"
.

- 111
One thing that is missing from several answers is that this is shell-dependent. If you're using the system default shell on 10.14 on below, which is bash, then references to (.)bash_profile are correct. Modifying /etc/profile would create the alias for sh for all users (but not in bash).
If you have switched, for example, to zsh, then making a system-wide change requires adding the alias to /etc/zprofile. If you wanted to make the change for only your user, then you could add it to ~/.zprofile

- 11
--color=auto
parameter made an error. Other parts worked well. – Eonil Jan 06 '12 at 07:10--color
. – Ignacio Vazquez-Abrams Jan 06 '12 at 07:12~/.profile
instead of~/.bashrc
to make it work. Maybe this is Mac OS X specific. – Eonil Jan 06 '12 at 12:12alias ll='ls -lG'
for the same effect in macosx. – Burhan Khalid Jan 06 '12 at 13:01alias ll='ls -lG'
to my ~/.bash_profile to make it work (in Lion, if that matters) – jessica Jul 28 '12 at 01:58$ echo "alias ll='ls -lG'" >> ~/.bashrc
– Avishai Mar 06 '14 at 21:28alias ll='ls -alG'
as I like to see the hidden files as well. – davidryan Jul 03 '16 at 17:18source ~/.bashrc
to activate it without exiting Bash. – rhand May 26 '17 at 05:41-a
-alias ll='ls -alG'
– Yakir GIladi Edry Jun 29 '22 at 15:48