Как реализовать много-столбцовый вывод файлов в консоль, как в утилите ls?
Мне нужно реализовать функционал утилиты ls с помощью языка C. Нужно повторить все точь в точь, как и в оригинальной ls. И проблема, которую я не могу решить - это многостолбцовый вывод. В оригинальном ls по дефолту все содержимое выводится в несколько столбцов, примерно вот так:\
dir1 file1 file2 dir2
dir3 file3 file4 dir4
Но при использовании ls | cat -e, оказывается, что после каждого выводимого файла находится символ конца строки. Вот так:
dir1$
file1$
file2$
dir2$
...
Вопрос в том, как же все таки этот вывод работает в оригинальном ls, и как можна было бы его реализовать с помощью C? Спасибо.