Co jest '@!' plik?


29

Mam nazwę pliku @!w folderze domowym. Kiedy go otwieram, ma tę samą zawartość, co mój drugi plik bash myscript.sh.

Nie przypisałem uprawnienia do wykonania oryginalnemu plikowi bash. Po sprawdzeniu właściwości jedyną różnicą między dwoma plikami jest rozmiar. Oryginalny rozmiar pliku to 1,1 KB, a @!rozmiar pliku to 714 bajtów. Jak jest tworzony automatycznie?


Czy zostanie odtworzony, jeśli go usuniesz, zmienisz nazwę lub przeniesiesz?
Videonauth

@Videonauth Nie wykonałem zadania usunięcia, zmiany nazwy ani usunięcia.
stokrotka

4
Który inny plik bash? Czy sprawdziłeś historię poleceń @!?
muru

3
Czy może to być efekt uboczny jakiegoś błędnego kodu bash, który uruchomiłeś?
M. Becerra

1
@muru inny plik bash oznacza? Jak dla którego polecenia @!? jakieś tworzenie plików?
stokrotka

Odpowiedzi:


97

Jeśli używasz Vima, może to być spowodowane tym, że wpisałeś :w@!zamiast :wq!. W układzie amerykańskim, @jest 2bezpośrednio powyżej QW, a tuż obok !na 1. Łatwy do pomyłki.

Możesz to sprawdzić, uruchamiając ponownie Vima i sprawdzając historię poleceń, przewijając w górę za pomocą klawisza strzałki w górę w trybie poleceń lub wpisując q:w trybie normalnym .


20
Cóż, mam kilka plików o nazwie catleżących tu i tam, ponieważ pisałem :'<,'>w! catzamiast :'<,'>w !cat.
muru

2
Znów sprawdziłem zawartość obu plików. Różnica wielkości wynika z faktu, że oryginalna zawartość pliku jest nieco modyfikowana po utworzeniu @!pliku przez pomyłkę . Dlatego rzeczywiście należy przyjąć odpowiedź.
stokrotka

1
@muru powinieneś usunąć swoją tożsamość i podjąć pracę jako tajny detektyw. Wow ...
Raja Anbazhagan

1
@NickT: Może dlatego, że ludzie często uczą się tego „q!” oznacza wyjście bez zadawania pytań i wstawienie aw zanim to napisze. (Technicznie powinieneś zadać takie pytanie jako osobne pytanie, ale pomyślałem, że można je zanotować / zamknąć jako nie zbadane i wystarczająco dobrze zadane pytanie)
TOOGAM

1
i tu jest moja historia linii poleceń: :wq, :wq@!, :.!:q!, :w@!, :wq!,:q!
stokrotka
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.