Что '@!' файл?

29

У меня есть имя файла @!в моей домашней папке. Когда я открываю его, он имеет то же содержимое, что и мой другой файл bash myscript.sh.

Я не назначил разрешение на выполнение оригинальному файлу bash. Когда я проверил свойства, единственное различие между двумя файлами - это размер. Исходный размер файла составляет 1,1 КБ, а @!размер файла - 714 байт. Как это автоматически создается?

маргаритка
источник
Будет ли он воссоздан, если вы удалите, переименуете или переместите его?
Видеонавт
@Videonauth Я не выполнил задание ни удалить, ни переименовать, ни удалить.
маргаритка
4
Какой другой файл Bash? Вы проверили историю своей команды для @!?
Муру
3
Может ли это быть побочным результатом некоторого глючного кода Bash, который вы запустили?
М. Бесерра
1
@muru значит другой bash файл? Как и какая команда для @!? любое создание файла?
маргаритка

Ответы:

97

Если вы используете Vim, это может быть потому, что вы набрали :w@!вместо :wq!. На макете США, @на 2, непосредственно выше QW, и в непосредственной близости !от 1. Легко опечатка.

Вы можете убедиться в этом, снова запустив Vim и изучив историю команд, либо прокручивая вверх с помощью клавиши со стрелкой вверх в командном режиме, либо печатая q:в обычном режиме .

Мур
источник
20
Ну, у меня есть куча файлов с именами, catлежащих здесь и там, потому что я напечатал :'<,'>w! catвместо :'<,'>w !cat.
Муру
2
Я снова проверил содержимое обоих файлов снова. Разница в размерах заключается в том, что исходное содержимое файла немного изменяется после ошибочно созданного @!файла. Так что на самом деле это должен быть принят ответ.
маргаритка
1
@muru ты должен стереть свою личность и пойти работать секретным детективом. Вау ...
Раджа Анбажаган
1
@NickT: Может быть, потому что людей часто просто учат, что "д!" значит выйти, не задавая вопросов, а вставив aw перед этим напишу. (Технически вы должны задать такой вопрос как отдельный вопрос, но я подумал, что его можно опровергнуть / закрыть как неисследованный, но вполне достаточно вопрос.)
TOOGAM
1
и вот моя команда история линии: :wq, :wq@!, :.!:q!, :w@!, :wq!,:q!
ромашка