1

Я хотел бы удалить каталог в dired-режиме emacs. Я помечаю каталог с помощью клавиши "d", а затем нажимаю "x", чтобы удалить помеченные. Затем я получаю следующую ошибку:

file-error Non-regular file is a directory <name of dir>

Есть ли способ заставить emacs удалить каталог и остановить его нытье?

2 ответа2

4

Я не уверен, какая у вас версия emacs, моя выдает эту ошибку:(file-error Removing directory Directory not empty ...) На пустые каталоги не жалуется.

Так или иначе, в версии, которую я имею, есть переменная: dired-recursive-deletes которая решает, могут ли каталоги быть удалены, если у них есть некоторый контент. Таким образом, вы должны настроить эту переменную с помощью:

M-x customize-variable

а потом при подсказке укажите:

dired-recursive-deletes

Затем вы можете выбрать поведение, нажав кнопку "Значение меню", а затем сохранить его с помощью кнопки в верхней части буфера.

0

Простой способ: ОТМЕТЬТЕ (m) каталоги, которые вы хотите удалить;
б. Поместите ТОЧКУ в один из отмеченных файлов;
с. Тип '!'[dired-do-command], в командной строке "Execute command ..." введите "rm -Rf"
д. Введите 'g', чтобы обновить буфер с задержкой, потому что emacs не знает, что вы изменили файловую систему.

Этот последний шаг может быть полезен для параметра dired: «Обновить буфер после команды оболочки». Может быть, это уже один.

Кстати, «dired-recursive-deletes» дает мне «[нет совпадений]»

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .