В некоторых случаях (например, в консоли) вы не сможете скопировать / вставить нечетный символ. В этой ситуации вы можете использовать подстановку файлов. Рекомендуется сделать ls
перед rm
, чтобы убедиться, что вы не включаете в удаление то, что хотите сохранить.
Любое односимвольное имя файла:
ls -l ?
rm ?
или любое односимвольное имя файла, которое не является буквенно-цифровым символом или дефисом:
ls -l [^a-zA-Z0-9-]
rm [^a-zA-Z0-9-]
Другая версия (с учетом локали) этого будет:
ls -l [^[:alnum:]-]
rm [^[:alnum:]-]
Вы можете комбинировать другие списки символов и классов в дополнение к более глобализирующим и определенным символам.
Удалите любой файл с трехсимвольным именем, который не начинается с «m», «s» или «y», имеет любой второй символ и заканчивается «1» или «9»:
rm [^msy]?[19]