Удалить файл с <Down> в названии?

Итак, на коробке CentOS я случайно выполнил :w<Down> в vim редактор, с "<Down>"буквально нажимая клавишу со стрелкой вниз на клавиатуре (отображается на экране как"<Down>"), и теперь у меня есть файл с именем"<Down>"от которого я не могу избавиться; бег"rm <Down>"(буквально излагая" меньше чем, D, o, w, n, больше чем ") дает синтаксическую ошибку.

Как я могу избавиться от этого файла с прикольным именем?

5 ответов

Решение

Используйте одинарные кавычки, чтобы не обрабатывать управляющие символы:

rm -f '<Down>'

Используйте \ для экранирования специальных символов. В этом случае вы бы использовали

rm \<Down\>

Как альтернативное решение:

$ ls -il .
total 0
1439039 -rw-r--r-- 1 medina foo 0 2010-07-15 16:48 ?????

# http://www.gnu.org/software/findutils/manual/html_mono/find.html#Deleting-Files
$ find . -inum 1439039 -delete

Я нашел самый простой способ справиться со всеми случаями побега - использовать язык сценариев:

$ cd /tmp/test/
$ ls
<Down>
$ python
Python 2.6.5 (r265:79063, Apr 16 2010, 13:57:41) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.unlink('<Down>')
>>> quit()
$ ls

Типа рм <Dи затем нажмите TAB, он покажет предложения, для имени нужного файла..

Другие вопросы по тегам