Что означает тильда в конце имени файла?


31

В Windows я считаю, что файлы с тильдой в имени файла представляют собой файлы, которые в данный момент открыты в приложении. Например, Microsoft Word создает файл почти с тем же именем, что и файл, который у вас есть в данный момент, но с тильдой в имени. Его значок также частично исчез. Насколько я знаю, это означает временный файл, который существует

  • в случае сбоя приложения и невозможности сохранить файл, или
  • чтобы исходный файл оставался разблокированным файловой системой и доступным для других приложений.

В Linux я столкнулся с файлом * .log с тильдой в конце имени файла ( scan.log~). Означает ли это, что файл журнала в настоящее время открыт в другом приложении, которое может записывать в него?

Ответы:


32

Если к файлу добавляется символ «a» tilde~, это означает лишь, что это резервная копия, созданная текстовым редактором или аналогичной программой; это не означает, что другая программа пишет в этот файл. Кроме того, любой файл, открытый в viне может быть открыт в другом приложении, но это другое обсуждение.

Чтобы легко найти все эти типы файлов, введите, cdчтобы перейти на верхний уровень вашей домашней папки и введите:

find -type f -iname '*~'

Или, если вы хотите найти их в определенном каталоге, введите:

find /home/mike/Downloads -type f -iname '*~'

Эти файлы могут быть очень полезны, если вы отредактировали файл и не сохранили резервную копию оригинала! GeditНапример, создает такую ​​резервную копию любого редактируемого файла, хотя вы можете отключить этот параметр в настройках. Тем не менее, (files~)они не могут заменить надлежащую резервную копию , поскольку они могут не содержать необходимые данные или быть версией, которую вы хотели редактировать.


Просто отметив, что если набор папок используется совместно через Samba, а затем программное обеспечение Office клиента Windows редактирует файл, то он создаст скрытую метафору блокировки файлов, например, с помощью ~ $ OriginalFilename.xlsx. Он будет содержать необходимую информацию о том, кто имеет блокировку. Поэтому будьте осторожны при написании сценариев, чтобы выполнить работу по очистке, если это ваш сценарий.
— Майкл Бланкеншип

12

Некоторые текстовые редакторы (например, emacs) создают резервную копию файла, который вы редактируете, и присваивает файлу резервной копии имя исходного файла плюс тильду. Файл, который вы описываете, может быть результатом открытия в scan.logтаком текстовом редакторе и внесения некоторых изменений.

Вы можете использовать fuser(см. Пакет Ubuntu psmisc), чтобы увидеть, если процесс в настоящее время имеет этот открытый файл:fuser scan.log~

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.