![Предупреждение для команды rm -r](https://rvso.com/image/1428726/%D0%9F%D1%80%D0%B5%D0%B4%D1%83%D0%BF%D1%80%D0%B5%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%B4%D0%BB%D1%8F%20%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D1%8B%20rm%20-r.png)
Я хочу rm
получать подсказки при рекурсивном удалении каталога, например:
$ rm -r <dir>
Do you want to remove the dir(Y/N)?
Есть ли аргумент, rm
который поможет мне это сделать?
решение1
Вам нужны заглавные буквы -I
, как в:
$ rm -rI tg/
rm: remove all arguments recursively?
Как отмечено в комментариях, это что-то приятное.GNU'srm
дает вам, и не требуется на основеспецификация posix дляrm
.
решение2
В зависимости от того, какую ОС вы используете, есть rm -i
(которая будет запрашивать каждый отдельный файл) или, возможно, rm -I
(часть GNU rm), которая, согласно странице руководства, будет"запрашивать один раз перед удалением более трех файлов или при рекурсивном удалении. Менее навязчиво, чем -i, но при этом обеспечивает защиту от большинства ошибок"
я очень рекомендуюпротивсоздав для этого псевдоним и вместо этого выработав привычку использовать один или другой из вышеперечисленных вариантов. Нахождение в системе без псевдонима, к которому вы привыкли, может создать много неприятностей (удаление файлов, которые вы не собирались удалять). Использование привычного варианта, когда вы на самом деле этого не хотите, означает лишь небольшое раздражение (несколько раз запрашивать и либо отвечать «да» на каждый запрос, либо выходить ( C-c) и начинать снова без опции). Последнее гораздо менее болезненно, я считаю.