Что означает символ @ в именах файлов

Когда я делаю ls в каталоге /proc/PID рядом с именами файлов появляется несколько символов @. Обычно я считаю, что это означает расширенные атрибуты, но когда я делаю длинную форму ls они не появляются в том месте, которое я ожидал бы, и результат выглядит иначе, чем обычно. Я попробовал поиск по Google, но нашел только расширенное описание атрибутов. Что происходит?

 root@hashcat:/proc/29286/ns# l ipc@ mnt@ net@ pid@ user@ uts@ root@hashcat:/proc/29286/ns# root@hashcat:/proc/29286/ns# ls -l total 0 lrwxrwxrwx 1 dylan dylan 0 Mar 21 21:09 ipc -> ipc:[4026531839] lrwxrwxrwx 1 dylan dylan 0 Mar 21 21:09 mnt -> mnt:[4026531840] lrwxrwxrwx 1 dylan dylan 0 Mar 21 21:09 net -> net:[4026531956] lrwxrwxrwx 1 dylan dylan 0 Mar 21 21:09 pid -> pid:[4026531836] lrwxrwxrwx 1 dylan dylan 0 Mar 21 21:09 user -> user:[4026531837] lrwxrwxrwx 1 dylan dylan 0 Mar 21 21:09 uts -> uts:[4026531838] 

  • Как найти индекс inode любого каталога?
  • udev создает правильные правила, но права исчезают, как только я пытаюсь получить доступ к файлам через C ++
  • Как показать разрешения в числовом формате?
  • Исправить цвета LS для каталогов с разрешением 777?
  • Как удалить каталог ': q!'?
  • Без учета . и .. из результатов поиска и ls
  • Список только скрытых файлов (а не только файлов точек) с использованием псевдонима ls
  • Два файла в одной папке с тем же именем - нужно удалить один, но не оба
  • One Solution collect form web for “Что означает символ @ в именах файлов”

    По умолчанию ls не печатает эти классификаторы. Скорее всего, вы используете псевдоним, ссылающийся на ls -F . (Вы можете использовать type ls или type l для проверки.)

    Опция -F документирована в info ls :

     '-F' '--classify' '--indicator-style=classify' Append a character to each file name indicating the file type. Also, for regular files that are executable, append '*'. The file type indicators are '/' for directories, '@' for symbolic links, '|' for FIFOs, '=' for sockets, '>' for doors, and nothing for regular files. Do not follow symbolic links listed on the command line unless the '--dereference-command-line' ('-H'), '--dereference' ('-L'), or '--dereference-command-line-symlink-to-dir' options are specified. 

    Поэтому записи с @ являются символическими ссылками. На самом деле символическая ссылка хранит только произвольную строку, которая обычно является именем другого файла, но в вашем случае ядро ​​просто вставляет описание, содержащее внутренний идентификатор.

    Linux и Unix - лучшая ОС в мире.