readdir () показывает невидимые файлы

Я использую readdir () в Ubuntu для отображения файлов и каталогов. Странно, что readdir () отображает некоторые файлы, начинающиеся с «точки», а некоторые заканчивающиеся на ~. Но эти файлы не находятся в моем указанном каталоге.

Что это за файлы?

Мне было интересно при чтении имен файлов, будут ли эти странные файлы упоминаться d_name или нет?

введите описание изображения здесь

С уважением

2

Решение

readdir читает все файлы, присутствующие в папке, в то время как ls только список не скрытых файлов. Попробуйте перечислить ваши файлы с ls -aи вы увидите эти файлы.

3

Другие решения

По соглашению, файлы, имена которых начинаются с точки, скрыты в Unix-подобных операционных системах (см. Вот).

Конечно, вы можете проверить точку в начале имен файлов, созданных readdir, и просто не возвращать / не выводить их.

1

По вопросам рекламы [email protected]