How to show only hidden files in Terminal?
The command :
ls -ld .?*
Will only list hidden files .
Explain :
-l use a long listing format
-d, --directory
list directory entries instead of contents, and do not derefer‐
ence symbolic links
.?* will only state hidden files
ls -d .!(|.)
Does exactly what OP is looking for .
If you just want the files in your current directory (no recursion), you could do
echo .[^.]*
That will print the names of all files whose name starts with a .
and is followed by one or more non-dot characters. Note that this will fail for files whose name starts with consecutive dots, so for example ....foo
will not be shown.
You could also use find
:
find -mindepth 1 -prune -name '.*'
The -mindepth
ensures we don't match .
and the -prune
means that find
won't descend into subdirectories.