Какая разница между этим:
sudo find /usr/local/mysql/data -type f -exec rm {} ';'
и это:
sudo rm -rf /usr/local/mysql/data
Какая разница между этим:
sudo find /usr/local/mysql/data -type f -exec rm {} ';'
и это:
sudo rm -rf /usr/local/mysql/data
sudo find /usr/local/mysql/data -type f -exec rm {} ';'
sudo заставит его работать от имени пользователя root, а затем вы найдете команду find -type f
чтобы получить все файлы (только файлы) в /usr/local/mysql/data
-exec rm{}
будет вызываться для каждого найденного элемента и удалит файл.
Так что это рекурсивно удалит файлы, но НЕ удалит все каталоги. Также не то, чтобы команда rm
использовалась без аргумента -f
(force)
rm -rf /usr/local/mysql/data
Эта команда полностью удалит все по указанному пути, каталоги и файлы будут удалены. -f
используется, поэтому не будет никаких запросов для выдающего пользователя.
Бывший удалит только файлы. Последний удалит всю структуру каталогов.
find /usr/local/mysql/data -type f -delete
удалит только обычные файлы. Каталоги останутся
rm -rf /usr/local/mysql/data
все что угодно.