Как правило, @
представляет собой символическую ссылку. Существуют определенные относительно стандартные индикаторы формата, часто добавляемые к имени файла при отображении его в списке файлов, чтобы вы могли быстро понять, что это такое; Я не уверен, что они созданы с помощью ls
, но у ls -F
есть хороший список: /
- это каталог, @
- это символическая ссылка (это означает, что файл действительно указывает на файл в другом месте), и |
, >
и =
- это разные специальные "файлы", используемые для межпроцессного взаимодействия. Кроме того, файлы с битом выполнения часто отображаются с завершающим символом *
.
На самом деле они не являются частью имени файла; они показаны пользователю, чтобы позволить им быстро классифицировать файл как обычный файл, программу, каталог, символическую ссылку или что-то еще.
В этом случае, просматривая скрипт установки yadr, выясняется, что он помещает все файлы конфигурации в не скрытые файлы в каталог .yadr
, вероятно, чтобы упростить управление ими. Поскольку больше ничего не ищет там файлы точек, он по умолчанию создает символические ссылки из вашего домашнего каталога в каталог, в котором он установлен (посмотрите на строку 301 в Rakefile Rakefile
; file_operation
обычно символьные ссылки ~/.file
на $PWD/file
). В install.sh
мы видим, что yadr обычно запускает свой rakefile в ~/.yadr
, поэтому при установке по умолчанию многие точечные файлы заменяются символическими ссылками на ~/.yadr
. В строке 24 файла rakefile мы видим, что именно так и происходит: file_operation
вызывается для vim
и vimrc
, что означает, что ~/.vim
и ~/.vimrc
символически связаны с ~/.yadr/vim
и ~/.yadr/vimrc
соответственно , Предыдущий ~/.vimrc
был перемещен в ~/.vimrc.backup
.
Итак, здесь произошло то, что установка yadr переместила ваш .vimrc
в .vimrc.backup
и заменила его ссылкой на собственный файл, расположенный в ~/.yadr
. Когда вы удалили ~/.yadr
, ссылка теперь указывает на несуществующий каталог; vim может создать файл, когда он не существует, но не может сохранить его в несуществующем каталоге . Чтобы отредактировать .vimrc
, вам придется удалить текущую символическую ссылку и начать заново с автоматически созданной резервной копии (если она существует), или с нуля (если она не существует).