Co oznacza tylda na końcu nazwy pliku?

31

W systemie Windows uważam, że pliki z tyldą w nazwie pliku reprezentują pliki, które są obecnie otwarte w aplikacji. Na przykład program Microsoft Word tworzy plik o prawie takiej samej nazwie jak plik, który obecnie masz otwarty, ale z tyldą w nazwie. Ikona jest również częściowo wyblakła. O ile mi wiadomo, oznacza to plik tymczasowy, który istnieje

  • na wypadek awarii aplikacji i braku możliwości zapisania pliku, lub
  • aby oryginalny plik pozostawał odblokowany przez system plików i dostępny dla innych aplikacji.

W systemie Linux natknąłem się na plik * .log z tyldą na końcu nazwy pliku ( scan.log~). Czy to oznacza, że ​​plik dziennika jest obecnie otwarty w innej aplikacji, która potencjalnie do niego pisze?

KOVIKO
źródło

Odpowiedzi:

32

Jeśli do pliku dołączony jest a tilde~, oznacza to tylko, że jest to kopia zapasowa utworzona przez edytor tekstu lub podobny program; nie sugeruje, że inny program zapisuje do tego pliku. Poza tym żadnego otwartego pliku vinie można otworzyć w innej aplikacji, ale to kolejna dyskusja.

Aby łatwo znaleźć wszystkie tego typu pliki, wpisz, cdaby przejść do najwyższego poziomu folderu domowego i wprowadź:

find -type f -iname '*~'

Lub, jeśli chcesz je znaleźć w określonym katalogu, wpisz:

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

Pliki te mogą być bardzo przydatne, jeśli zdarzyło Ci się edytować plik i nie zapisałeś kopii zapasowej oryginału! Gedit, na przykład tworzy taką kopię zapasową dowolnego edytowanego pliku, chociaż możesz wyłączyć to ustawienie w preferencjach. Jednak (files~)to nie zastąpi odpowiedniej kopii zapasowej , ponieważ mogą one nie zawierać dane, których potrzebujesz, lub być wersję edycji chciałeś.


źródło
Wystarczy zauważyć, że jeśli zestaw folderów jest udostępniany przez Sambę, a następnie oprogramowanie Office klienta Windows edytuje plik, utworzy metaforę blokowania pliku ukrytego, na przykład używając ~ $ OriginalFilename.xlsx. Będzie zawierać niezbędne informacje o tym, kto ma zamek. Dlatego zachowaj ostrożność, pisząc skrypty, aby wykonać prace porządkowe, jeśli taki jest twój scenariusz.
Michael Blankenship
12

Niektóre edytory tekstu (takie jak emacs) tworzą kopię zapasową edytowanego pliku i nadają mu nazwę pliku oryginalnego plus tyldę. Opisany plik może być wynikiem otwarcia scan.logtakiego edytora tekstu i wprowadzenia pewnych zmian.

Możesz użyć fuser(patrz pakiet Ubuntu psmisc), aby sprawdzić, czy proces ma obecnie otwarty ten plik:fuser scan.log~

Mox
źródło