Как удалить каталог, заполненный файлами, и другие подкаталоги навсегда, минуя корзину, из командной строки в OS X?

Как удалить каталог, заполненный файлами, и другие подкаталоги навсегда, минуя корзину, из командной строки в OS X?

Итак, мои навыки работы с командной строкой немного заржавели, и мне трудно запомнить различия между значениями флагов в ОС разных дистрибутивов. Я также не очень хорошо помню весь свой технический жаргон, поэтому страницы руководства кажутся мне совершенно непонятными.

В общем, я работаю на Mac OS X и хочу удалить каталог вместе со всем его содержимым. Что меня больше всего беспокоит, так это то, что он удалит буквально ВСЕ ссылки в каталоге, включая ../ и ../, <everything else, including ../'s own ../>а затем просто полностью испортит всю мою систему.

Какой из них я хочу запустить?

$ rm -R dir-name/

или

$ rm -r

решение1

Если вы хотите удалить foo/bar, то нужная вам команда rm -r foo/bar(предполагая, что вы работаете в каталоге, содержащем foo). Это удалит barи все, что в нем находится, но оставит fooи все остальное в нем нетронутым.

rm -rдостаточно умен, чтобы не рекурсивно входить ../- в противном случае every rm -rудалил бы все.

решение2

Если вы запустите:

rm -r

без передачи аргумента каталога/файла ничего не произойдет.

Нет никакой разницы между:

rm -r xyz
rm -R xyz
rm -r xyz/

и т. д.

решение3

Вы также можете добавить -f, если не хотите получать запрос на подтверждение:

rm -rf xyz

Связанный контент