Какие угловые случаи мы должны учитывать при синтаксическом анализе $ PATH в Linux?

Я работаю над приложением C, которое должно обходить $ PATH, чтобы найти полные имена путей для двоичных файлов, и единственная допустимая зависимость - это glibc (то есть без вызова внешних программ, подобных которым). В обычном случае это просто влечет за собой разделение getenv («ПУТЬ») на двоеточия и проверку каждого каталога один за другим, но я хочу быть уверенным, что охватил все возможные угловые случаи. На что следует обратить внимание? В частности, относительные пути, пути, начинающиеся с ~, предназначенные для расширения до $ HOME, или пути, содержащие: char allowed?

7
задан Shea Levy 19 August 2011 в 12:43
поделиться