Как удалить файл со странным именем?

Я написал программу, которая использует функцию отображения памяти POSIX (mmap)

Программа берет файл (a.dat) и карты памяти для чтения / записи.

Из-за ошибок в программе, каждый раз, когда я запускаю программу файл с некоторыми странными именами (например, ?d?P?^z??d?P?^z?) создано. Ошибка устранена, но я не могу удалить файлы.

Я не могу удалить его ни с помощью командной строки, ни путем выбора / удаления из оконного менеджера.

Так как мне его удалить? Я использую Ubuntu 11.04.

2 ответа

Решение

rm -i -- * предложит вам удалить каждый файл. Вы можете и должны поменять '*' на более узкое соответствие, если файлов много. -- останавливает обработку параметров, поэтому файл с именем -d будет удален rm успешно.

Я использовал это в прошлом, и это работает, пока вы не нажмете специальный символ или 2, которые ему не нравятся.

Ты можешь использовать ls -li показать все файлы по их индоду. Затем выполните эту команду, чтобы удалить файл:

find . -inum ${INODE_NUM} -delete

я добавил -maxdepth 1 к моей находке, чтобы быть в безопасности:

find . -maxdepth 1 -inum ${INODE_NUM} -delete

Разве не сработает простой поиск / подтверждение файлов по шаблону и rm?

find . -maxdepth 1 -name "*P*d*P*z" -exec ls -a {} \; 
find . -maxdepth 1 -name "*P*d*P*z" -exec rm {} \;
Другие вопросы по тегам