Как получить список всех программ Linux?
echo $PATH
/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

список каталогов с бинарниками, разделенные через двоеточие, которые в баше доступны без указания прямого пути
в вашей системе может (даже не может, а точно) другой список, может в рамкой одной системы у разных пользователей отличаться
Совет: взять исходники того шелла, который взят за образец, и посмотреть, как это сделано в нем.