ls alieas Study Notes

Your ls is not GNU ls at all - it’s replaced by:

  • eza (a modern replacement for ls)

What’s happening

Your alias is:

ls -> eza -lh --group-directories-first --icons=auto

So:

  • ls -la is actually being interpreted by eza
  • eza does not behave exactly like ls
  • It may not show . and .. entries by design, depending on defaults and flags

Why \ls -la works

\ls -la

This bypasses the alias and runs real /bin/ls.

So:

  • \ls → standard Linux behavior
  • ls → customized eza behavior

Important clarification

Nothing is “missing” or broken:

  • . and .. still exist
  • they are just not shown by your eza configuration

If you want ls to behave normally again

Option 1 - temporary

unalias ls

Then:

ls -la

Option 2 - keep eza, but fix behavior

Modify alias:

alias ls='eza -lah --group-directories-first --icons=auto --all'

Key part:

  • --all → ensures dot entries are shown

Option 3 - always use real ls when needed

command ls -la

or

\ls -la

Why eza behaves like this

eza is designed for:

  • cleaner output
  • hiding clutter by default
  • prettier directory views

But it sacrifices some strict POSIX ls behavior unless explicitly configured.


Bottom line

Nothing is locked or corrupted.

You’re just seeing:

ls has been replaced by a tool with different defaults.

If you want, I can help you tune eza so it behaves like classic ls but still keeps icons and colors.