В чем смысл rmdir в UNIX?

В чем смысл rmdir в UNIX?

Я новичок в UNIX (MAC OS X bourne shell POSIX), я понимаю, что rmdirудалит только пустой каталог, но при каких обстоятельствах вы на самом деле захотите использовать rmdir <directory name>, а не только rm -r <directory name>? Есть ли какой-то разумный вариант использования, который я не могу оценить, и знание которого сделало бы мое программирование немного лучше, если бы я это сделал? Спасибо.

решение1

rmdirбезопаснее: он отказывается удалять каталог, если он содержит какие-либо файлы. Что делать, если вы пытаетесь удалить не тот каталог или каталог все еще содержит (возможно, скрытые) нужные вам файлы?

Это такжеисторические причины: в начале rmпрограмма не имела -rпереключателя, поэтому rmdirнужно было удалить каталоги. Тогда rmdirэто была нетривиальная программа, но сегодня это просто оболочка для rmdir(const char*)функции C.

решение2

Я использую rmdir, когда удаляю каталог, который яожидатьбыть пустым, так что он даст сбой, если в нем еще есть файлы. Использование rm -rfможет сдуть файлы, которые я хочу сохранить, если я что-то неправильно наберу.

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