1

Я работаю над сайтом для клиента и вижу папку, содержащую более 1 миллиона файлов кэша.

Мне нужно удалить его, но я не могу, у меня есть это сообщение: Список аргументов слишком длинный

Я начал удалять все файлы, начиная с aaa *, bbb *, ccc * .... но я не хочу тратить свою жизнь ... (rm -f aaa*.string.php)

Как я могу это сделать ?? Спасибо !

3 ответа3

7

find и xargs ваши друзья, как всегда:

find -type f -print0 | xargs -0 rm

Или, для особого случая удаления (спасибо, Eddy_Em):

find -type f -delete
3

Вместо удаления отдельных файлов вы можете удалить, а затем заново создать саму папку:

cd folder/..
rm -rf folder
mkdir folder

Если это работает в вашем сценарии, это, вероятно, будет намного быстрее, чем любой метод, основанный на явном перечислении и удалении отдельных файлов.

0

Пытаться

ls | xargs -n 200 rm -f

Со временем все удалю

Вы можете использовать grep для сопоставления с образцом, если вы хотите удалить подмножество файлов

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