A resposta de Andy está correto, como visto na página man:
Anchoring
The caret ^ and the dollar sign $ are meta-characters that respectively match the empty string at the beginning and end of a line.
O motivo pelo qual ele funciona é o -l flag to ls faz com que ele use o formato de listagem longa. A primeira coisa mostrada em cada linha são as permissões legíveis para o arquivo, e o primeiro caractere é d para um diretório ou - para um arquivo