Команда ls показывает, что лежит в текущей папке. Но она не заглядывает внутрь подпапок — а файлы часто прячутся глубоко, в папке внутри папки внутри папки. Чтобы увидеть всё дерево разом, нужна команда find.
find . — обойти всё дерево
find (от find — «найти») рекурсивно обходит папку и все вложенные подпапки, выводя каждый файл и каждую папку, которые встретит по пути:
find .
Точка . означает «начни с текущей папки». Слово «рекурсивно» здесь — ключевое: find не останавливается на верхнем уровне, а спускается всё глубже и глубже, пока не покажет даже самый спрятанный файл.
Почему это важно? Когда проект разрастается, ты теряешь из виду, где что лежит. find . даёт честную карту: один взгляд — и видно всё, ничего не скрыто в недрах подпапок.
Попробуй
В твоей папке есть файл a.txt, файл notes.txt и — внимание — файл b.txt, спрятанный в подпапке sub внутри projects. Выведи всё дерево целиком:
find .
В выводе ты увидишь и b.txt, хотя он лежит на два уровня вглубь. Именно это и значит «рекурсивный обход» — никто не спрячется.