Isso usará o comando find para recuperar arquivos de ponto e arquivos com o conjunto de sinalizadores "oculto".
Os arquivos correspondentes são alimentados como uma lista de argumentos em ls via sed (para remover o resultado ".", bem como os prefixos "./") e xargs . Isso permite a especificação de parâmetros adicionais de ls (por exemplo, -l ).
alias l.="find . \( -flags +hidden -or -name '.*' \) -maxdepth 1 | sed 's/^\.\/*//' | xargs ls -d"
A construção inteira é projetada para listar apenas o diretório atual ( -maxdepth 1 parameter para find ); se isso não for desejado, uma condicional precisará ser introduzida para verificar a opção -R e suprimir a opção maxdepth para find de acordo.
Exemplo:
$ ls -alO
total 8
drwxr-xr-x 9 guido staff - 306 Apr 13 22:43 .
drwxr-xr-x+ 6 guido staff - 204 Apr 13 19:00 ..
drwxr-xr-x 2 guido staff - 68 Apr 13 22:43 .hiddendir
-rw-r--r-- 1 guido staff - 0 Apr 13 21:48 .xx
-rw-r--r-- 1 guido staff - 0 Apr 13 21:17 file
-rw-r--r-- 1 guido staff - 18 Apr 13 21:03 file.b
drwxr-xr-x@ 2 guido staff hidden 68 Apr 13 22:43 hidden2
-rw-r--r--@ 1 guido staff hidden 0 Apr 13 22:35 hide
drwxr-xr-x 2 guido staff - 68 Apr 13 21:51 tst
$ l.
.hiddendir .xx hidden2 hide
$ l. -alO
drwxr-xr-x 2 guido staff - 68 Apr 13 22:43 .hiddendir
-rw-r--r-- 1 guido staff - 0 Apr 13 21:48 .xx
drwxr-xr-x@ 2 guido staff hidden 68 Apr 13 22:43 hidden2
-rw-r--r--@ 1 guido staff hidden 0 Apr 13 22:35 hide