Как уже было предложено, я всегда использовал синтаксис
rm -rf -- filename
когда мне пришлось удалить файл с чертой в качестве префикса, потому что - говорит команде, что она не ищет какой-либо другой параметр, а только имена файлов.
Помня об этом, чтобы защитить мою важную папку от случайного удаления файла, я использовал для создания пустого файла с именем просто -i, который обычно помещается вверху списка файлов при разрешении поиска *. Итак, команда
rm -rf *
когда извиняется в моей защищенной папке, взорвется во время выполнения команды:
rm -rf -i filename1 filename2 .... (all the other files in the folder)
и оболочка, вместо того, чтобы немедленно удалить все, перестает запрашивать подтверждение (как требует опция -i).